一站式Unarchive Bash脚本Linux

安德鲁

我在线找到了以下脚本。说明是将其添加到〜/ .bashrc。在我安装Linux发行版的64位版本之前,它运行良好。(Kali Linux-Debian Wheezy)。我不确定发生了什么。为什么它不起作用,我该如何解决?我对Linux相对较新,对bash脚本来说则是全新的。脚本:

#!/bin/bash
# function Extract for common file formats

function extract {
 if [ -z "$1" ]; then
    # display usage if no parameters given
    echo "Usage: extract <path/file_name>.<zip|rar|bz2|gz|tar|tbz2|tgz|Z|7z|xz|ex|tar.bz2|tar.gz|tar.xz>"
 else
    if [ -f $1 ] ; then
        # NAME=${1%.*}
        # mkdir $NAME && cd $NAME
        case $1 in
          *.tar.bz2)   tar xvjf ../$1    ;;
          *.tar.gz)    tar xvzf ../$1    ;;
          *.tar.xz)    tar xvJf ../$1    ;;
          *.lzma)      unlzma ../$1      ;;
          *.bz2)       bunzip2 ../$1     ;;
          *.rar)       unrar x -ad ../$1 ;;
          *.gz)        gunzip ../$1      ;;
          *.tar)       tar xvf ../$1     ;;
          *.tbz2)      tar xvjf ../$1    ;;
          *.tgz)       tar xvzf ../$1    ;;
          *.zip)       unzip ../$1       ;;
          *.Z)         uncompress ../$1  ;;
          *.7z)        7z x ../$1        ;;
          *.xz)        unxz ../$1        ;;
          *.exe)       cabextract ../$1  ;;
          *)           echo "extract: '$1' - unknown archive method" ;;
        esac
    else
        echo "$1 - file does not exist"
    fi
fi
}

错误:

 extract LibreOffice.tar.gz 
tar (child): ../LibreOffice.tar.gz: Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now

编辑:取消注释Name=...mkdir $NAME...解压缩tar就好了。但是,它没有解压缩.zip。立即尝试使用其他文件。

编辑2:我真的很愚蠢。在我发布此代码之前,我并没有费心看代码。取消注释可解决此问题。但是,为什么我现在必须取消注释代码,但是在安装64位版本之前,我没有注释?

安德鲁

通过取消注释解决了该问题。

# NAME=${1%.*}

# mkdir $NAME && cd $NAME

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

一站式Grep

一站式多项-Redis

Keras一站式停止学习

一站式编码的Tensorflow蒙版

ElasticSearch一站式查询多个查询

一站式意甲联赛的海图线

umbraco一站式不同品牌

一站式分配4个不同的玩家到一个回合

一站式传递多个.txt文件的内容至while / read / do

一站式熊猫数据框搜索解决方案

获取完整的堆栈跟踪信息,以解决一站式致命PHP错误

在C ++中使用libCurl API进行身份验证SAIO(一站式融合)

凿子:如何实现高效的一站式多路复用器?

一站式将JSON嵌套数组转换为Python嵌套列表

一站式操作的Java控制台计算器

Wordpress:安装失败:无法创建目录。“一站式wp迁移”(即使使用CHMOD 777)

如何在第一次选择中选择一个表中的所有数据和另一个表中匹配数据的记录。一站式查询

一站式编码训练和测试数据时形状不匹配。在将get_dummies与管道一起使用时,Train_Data的虚拟列比Test_data更多

在串行端口linux上用交互式bash脚本替换登录提示

如何编写一个Bash脚本,该脚本将基于Linux的Watch输出对Ceph集群做出反应

Linux bash脚本要求在一定时间间隔内运行用户输入

linux bash脚本解压缩到同一目录

linux使用bash脚本或命令行一线批量重命名文件

如何通过bash脚本从最后到第一个对linux中的数据进行排序

Linux bash脚本

交互式bash脚本

Bash交互式脚本

与MSYS2中一样,如何在Linux中使用CRLF(回车)来处理Bash脚本?

Linux bash-如何运行从另一个脚本生成的二进制文件列表?