我总是在我想要这些文件的路线上使用以下方法提取此类文件:
# tar -xvf file.tar.bz2
但它总是创建一个folder
名为“文件”(对于此示例)并将所有内容存储在其中。
我从来没有遇到过这样的问题,但现在我需要避开该文件夹并简单地将我想要的所有内容提取到路线中。
我一直在阅读man tar
(手册)..但我仍然找不到造成这种情况的特定属性。
我怎样才能做到这一点? (All in terminal
)
答案1
tar 不会创建名为文件; 文件夹文件存储在 tarball 中。这是因为 tarball 是使用以下命令创建的
tar cf foo.tar.bz2 foo
而不是
cd foo
tar cf foo.tar.bz2 .
根据曼塔尔,您可以使用开关--strip-components
(--strip-path
在旧版本中)来覆盖此功能。
要删除单个前导文件夹,请使用以下命令:
tar xvf file.tar.bz2 --strip-components 1