zoukankan      html  css  js  c++  java
  • 批量解压缩,显示进度条(2)

    #!/bin/bash
    #***************************************
    #   批量解压缩
    #   Batch decompression
    #   981789763@qq.com
    #   2019-07-11 
    #***************************************
    function jdt(){
        #进度条打印, $1 当前的个数, $2 总文件数
        str=""
        #(($((${1}*100/${2}))/2)) , 长度/2是为了只打印1/2的进度条
        for ((x=0;x<=$(($((${1}*100/${2}))/2));x++))
        do
            str+="="
        done
        printf "[e[036m%-51se[0m] %d%% 
    " "$str" "$((${1}*100/${2}))"  #$((${1}*100/${2}))计算出百分比
    }
    #=========================================
    function jys(){
        case $1 in
        *.tar.*) tar -xf $1 >/dev/null 2>&1
        ;;
        *.tar) tar -xf $1 >/dev/null 2>&1
        ;;
        *.tgz) tar -xf $1 >/dev/null 2>&1
        ;;
        *.zip) unzip -o $1 >/dev/null 2>&1
        ;;
        *.gz) gunzip  $1 >/dev/null 2>&1
        ;;
        *.bz2) bzip2 -d $1 >/dev/null 2>&1
        ;;  
        *) return 1
        ;;
        esac
    }
    #========================================
    function main (){
        m=1
        cd $1 #$1为压缩包目录
        file=(`ls |grep -E ".tar|.tgz|.gz|.bz2|.zip"`)
        printf "当前解压路径:%s ,共%d个压缩包
    " "$1" "${#file[*]}"    
        for file_name in ${file[*]}
        do
            jys $file_name
            jdt $m ${#file[*]}
            let m+=1
        done
        mkdir src
        find . -maxdepth 1 -type f -exec mv {} ./src ; &>/dev/null 
        echo -e
    }
    
    #------------------
    if [ -n "$1" ];then 
        main $1
    else
        echo "Enter the absolute path to decompression after the script"
    fi
    
    

    效果如下:

    jdt2
    jdt1

    原始第一版https://www.cnblogs.com/outsrkem/p/11068766.html


    作者:Outsrkem
    出处:https://www.cnblogs.com/outsrkem/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    数据库-数据约束
    数据库-表2
    数据库-表
    MySQL入门
    记一次stm8l程序跑飞
    nRF24L01P的ShockBurst与Enhance ShockBurst
    电路板工艺中的NPTH和PTH
    nRF24L01P数据传输速率
    STM32F030-UART1_DMA使用提示
    Altium Designer 复制报错-奇怪的问题解决办法
  • 原文地址:https://www.cnblogs.com/outsrkem/p/11257454.html
Copyright © 2011-2022 走看看