我有一堆tar和tar.gz文件,我想解压缩。在这些文件中,大多数文件都在内部压缩了相同的文件夹结构(尽管文件不同)。
如果我通过右键单击并选择“Extract Here”来手动执行此操作,它将为我创建一个具有原始文件名的新文件夹并将文件转储到那里。
但是,当我通过命令行执行此操作时,行为并不总是相同。有时它会创建所需的新文件夹,有时却不会创建它,导致它覆盖其他人的提取。
使用-C选项似乎需要该文件夹已存在。如何在命令行中模拟手册“Extract Here”的行为?
感谢。
答案 0 :(得分:1)
您可以像这样创建一个bash函数;
function untarhere() {
(mkdir -P $1; cd $1; tar xzf $2)
}
然后将其称为
untarhere /your/destination/directory /your/tar/file.tar