自动根据压缩文件的后缀名进行解压

本文介绍了一个根据文件后缀名自动选择合适解压方式的 Bash 脚本,支持 zip, tar, gz, bz2 等格式。通过简单的命令行参数配置即可指定待解压文件及目标路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#!/bin/bash

#--------------------------------------
#本脚本实现根据文件的后缀名进行解压
#日期:2016/7/23
#作者:齐豪
#--------------------------------------

Usage(){
    echo "usage: 2.self_compression.sh [--list] or [Source compressed file]"
    echo "       [Destination path]"
    echo "Self compression accroding to the file name suffix"
    exit
}

List(){ #提示支持的解压类型
    echo "Supported file types: zip tar tar.gz tar.bz2"
    exit
}

filename=$1 #要解压的文件
path=$2 #解压到路径名
ext="${filename##*.}" #获取文件名的后缀

if [ -z $filename ]; then #判断用户是否输入了第一参数
    Usage;
elif [ $filename = '--list' ]; then #显示支持的解压类型
    List;
elif [[ -n $filename && -n $path ]]; then #解压
    case $ext in
        'tar')
            eval "tar xvf $filename -C $path";;
        'gz')
            eval "tar zxvf $filename -C $path";;
        'bz2')
            eval "tar jxvf $filename -C $path";;
        'zip')
            eval "unzip $filename -d $path";;
        *)
            echo 'error(101) This type is not supported(tar|gz|bz2|zip)';;
    esac
    echo "right"
fi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值