我已经搜索并找到了如何实现我想要的两个部分,但没有任何东西可以让你完整地完成....
我想做的是将一个特定的文件夹从 tar.gz 中提取到另一个文件夹中,该文件夹的路径与它在 tar.gz 中的路径不同。
例如:
我的backup.tar.gz文件的目录路径是:a/b/c/d(d是我的main,里面还有很多)
我想在这个不同的服务器路径中将目录“d”解压到“m”中:a/b/m
如果我尝试此代码:tar -xzf backup.tar.gz -C a/b/m
** 文件夹结构看起来像:a/b/m/a/b/c/d 但我希望它看起来像 a/b/m+d 以便存档中的所有主要文件/文件夹'd' 路径在 'm' 路径中结束
非常感谢任何帮助。
谢谢!
最佳答案
好的,我明白了!
基本上我可以只使用 strip 命令删除 x 个前导目录。在这种情况下,我的命令将如下所示:
tar -xzf backup.tar.gz --strip-components=3 -C a/b/m
在将其解压缩到目标目录之前,从我的存档 (backup.tar.gz : a/b/c/d) 中删除了前三个路径目录。
现在看起来像这样:a/b/m+d
关于linux - 从 tar.gz 中将特定文件夹提取到特定目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24234184/