提取 tar 文件而不覆盖工作目录

提取 tar 文件而不覆盖工作目录

我有一个包含数百电子表格,在 tar 文件里面有一个目录,home/common/4000_UW_spreadsheets我想要做的是提取一个单个文件到当前目录,/home/qc/me/archive而不提取 tar 文件内的目录。

有什么方法可以做到这一点而不将整个目录添加到工作目录?

我知道我可以使用tar --extract [FILE]但这也会提取home/common/4000_UW_spreadsheets目录。

请假设我无法下载任何内容

答案1

您可以使用--strip-components。

tar -xf spreadsheets.tar --strip-components 3将会把所有文件提取/home/qc/me/archive到当前目录,或者如果使用 -C 开关,则提取到指定目录:

tar -xf spreadsheets.tar --strip-components 3 -C /home/qc/me/archive

最后一行代码似乎就是您想要的。

编辑:我错过了你只想要的部分单个文件即使它是斜体和粗体,也会被提取。这应该更合适:

tar -xf spreadsheets.tar -C /home/qc/me/archive home/common/4000_UW_spreadsheets/my_spreadsheet --strip-components 3

刚刚测试了这条线路并且它按照您想要的方式工作。

相关内容