话不多说,先上代码:

#!/bin/bash
cd /opt/software    ----文件的目录位置
count=`ls -l | grep '^-' | wc -l`     ----保存当前目录下的文件个数,这里使用管道符来进行计算
if [ $count -ne 0 ];     ----文件个数不等于0开始进入条件
thenfor file in `ls`     ----遍历所有文件dofileName=$file    ----将文件名进行保存,这里是方便后面截取文件类型作准备targzName=${fileName:0-6}     ----tar.gz类型的文件,这里是截取最后6位tarName=${fileName:0-3}      ----tar类型的文件,截取最后3位zipName=${fileName:0-3}      ----zip类型的文件,截取最后3位if [ "$targzName" = "tar.gz" ];     ----判断是否是tar.gz类型thentar -zxf /opt/software/$file -C /opt/install    ----解压到/opt/install目录下fiif [ "$gzName" = "gz" ];      ----判断是否是gz类型thentar -xf /opt/software/$file -C /opt/installfiif [ "$zipName" = "zip" ];     ----判断是否是zip类型thenunzip -d /opt/software/$file  /opt/installl      ----判断是否是zip类型fidone
elseecho "this direction is null";     -----如果没有文件,给出提示
fi

我这里可以对tar.gz、gz、unzip压缩文件进行一键式解压到目标目录下,如需解压其他文文件,可以自行添加相关代码,具体解释说明看代码后面的注释。
使用的前提是目录要做好统一,先建文件夹software和install,将压缩文件拖进software里,在进行解压。这里最好和我这里的目录建的一样,为了方便起见。
PS: 上面文件类型的判断,可以统一截取最后3位,然后用case语句来判断,也是不错的选择。

使用shell脚本一键式解压压缩文件相关推荐

  1. Linux Shell脚本中压缩包解压到目标目录下

    在Linux Shell脚本中,把一个压缩文件解压到目标目录下,使用如下代码: tar -xvf server.tar -C /opt/ 上述命令实现了把当前目录下的server.tar的压缩包,解压 ...

  2. linux shell脚本自动批量解压文件

    单个文件解压很简单,批量不确定目录的压缩包呢?解压到原路径?解压后删除原压缩包?本脚本可一键解决以上所有问题 linux shell脚本自动批量解压文件 脚本免费下载地址: 传送门https://do ...

  3. R语言使用unzip函数解压压缩文件(Extract or List Zip Archives)

    R语言使用unzip函数解压压缩文件(Extract or List Zip Archives) 目录 R语言使用unzip函数解压压缩文件(Extract or List Zip Archives) ...

  4. python批量解压文件_python 批量解压压缩文件的实例代码

    下面给大家介绍python 批量解压压缩文件的实例代码,代码如下所述: #/usr/bin/python#coding=utf-8import os,sys import zipfile open_p ...

  5. php tp5在线解压压缩文件

    php tp5在线解压压缩文件 没啥原理,直接上代码把 解压方法 /*** 解压zip文件到指定目录* @param {string} $filepath: 文件路径* @param {string} ...

  6. centos 安装并使用rar解压压缩文件

    下载 下载自己的版本,下边以64位的为例: wget http://www.rarlab.com/rar/rarlinux-x64-5.6.1.tar.gz 解压 到文件夹/usr/local/rar ...

  7. Linux:shell 脚本 自动解压压缩文件tar.gz到指定目录

    具体情境 Ubuntu16.04系统,将.tar.gz格式的文件从/home/myftp/upload/nuodongiot目录自动解压到/home/myftp/upload/backupcopy目录 ...

  8. 【Delphi】从内存读取或解压压缩文件(RAR、ZIP、TAR、GZIP等)(二)

    D7zTool是一个基于7-zip库开发的解压缩示例程序,除了应用程序本身,仅包含一个7z.dll 主要界面: D7zTool示例程序demo的pas源码 unit Unit1;interfaceus ...

  9. Linux 解压 压缩文件

    1.*.tar 用 tar -xvf 解压 2.*.gz 用 gzip -d或者gunzip 解压 3.*.tar.gz和*.tgz 用 tar -xzf 解压 4.*.bz2 用 bzip2 -d或 ...

最新文章

  1. PTA基础编程题目集-7-16 求符合给定条件的整数集
  2. idm 爬取网站 跳转路径_儋州网站案例基本流程,电子元件网络推广,浅析
  3. COM线程模型的行为
  4. 启动 Tensorboard
  5. IAAS、PAAS与SAAS
  6. 计组-输入输出系统小结
  7. IIS作为ASP.NET Core2.1 反向代理服务器未说的秘密
  8. 马尔可夫链蒙特卡罗法(Markov Chain Monte Carlo,MCMC)
  9. linux下不同tomcat使用不同的jdk版本
  10. Startlsback常见使用过程中的问题
  11. 从零开始学 Web 之 JS 高级(二)原型链,原型的继承
  12. 第二章 驱动程序调测方法与技巧
  13. 如何设计测试用例?为什么要设计测试用例?
  14. html文件恢复工具,小飞文件恢复工具
  15. Mac系统中键盘失灵后的解决小技巧
  16. 【2023.3.18 美团校招】
  17. 高并发常见的解决方案
  18. oracle utl_http.request,通过ORACLE的UTL_HTTP工具包发送包含POST参数的请求
  19. char、varchar、varchar2区别
  20. Appium环境搭建之Android SDK及模拟器的下载配置

热门文章

  1. 删除txt等文本文档中指定行方法
  2. 猴导师(C++练习题)
  3. RNA-seq数据构成原理
  4. C++、构造函数与拷贝构造函数
  5. H5指的是HTML5自适页面营销,知识解答:什么是H5广告?H5和HTML5是一回事吗?
  6. JDBC——通过德鲁伊连接池连接Mysql
  7. 如何安装vue脚手架
  8. 秒懂QPS、TPS、PV、UV、GMV、IP、RPS
  9. B站小学生们当起了算法老师,这么卷么?
  10. egg 如何配置 cors(全网少数配完可行的文档)