linux - 将文件解压到新文件夹中

标签 linux tar

我有一堆 tar 和 tar.gz 文件,我想解压缩。在这些文件中,大多数文件都压缩了相同的文件夹结构(尽管文件不同)。

如果我通过右键单击并选择“在此处提取”来手动执行此操作,它将使用原始文件名为我创建一个新文件夹并将文件转储到那里。

但是,当我通过命令行执行此操作时,行为并不总是相同。有时它会创建所需的新文件夹,有时则不会,导致它覆盖其他文件夹的提取。

使用 -C 选项似乎需要已经存在的文件夹。如何在命令行中模仿手册“Extract Here”的行为?

谢谢。

最佳答案

您可以创建一个像这样的 bash 函数;

function untarhere() {
   (mkdir -P $1; cd $1; tar xzf $2)
}

然后这样调用它

   untarhere /your/destination/directory  /your/tar/file.tar

关于linux - 将文件解压到新文件夹中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6863654/

相关文章:

python - 使用Python,你如何纯粹在内存中解压?

linux - 如何在所有子目录中压缩某些文件类型?

linux - 在 bash 中使用 "sudo tar"时出现奇怪的权限更改

linux - 没有元数据的 tar 存档

linux - 在 Linux 中查找最近 30 天内修改的文件数和文件总大小

linux - qmake .pro 文件未正确解析以生成 LD_LIBRARY_PATH

Linux grep 和特殊字符之间的打印

java - 如何使用 Java 将 .tar 文件放入 .tar.gz 文件中?

linux - 根据第一个字符有条件地将字符添加到输入行

java.awt.Robot - 屏幕截图需要多少时间