tar:将 myfile.tar.gz 存档解压到名为 myfile 的目录中

tar:将 myfile.tar.gz 存档解压到名为 myfile 的目录中

可以用 tar 完成吗?我必须编写 bash 脚本吗?

答案1

tar -xzf foo.tar.gz -C bar/

将目录更改为 bar 后,将提取 gzip 压缩的 foo.tar.gz

答案2

从 tar 1.28 开始您可以使用--one-top-level选项。

tar zxvf archive_name.tar.gz --one-top-level

这将提取archive_name.tar.gz到名为 的目录archive_name

或者在 .bashrc 文件中创建一个 bash 函数,这样你就可以在任何地方使用它了。我将其命名为 tar2dir。

tar2dir() {
        mkdir $(basename $1 .tar.gz)
        tar xf $1 -C $(basename $1 .tar.gz)
}

相关内容