在Bash中进行Tarballing:有没有办法只取消引用指向tar'd目录之外的链接?

时间:2012-02-06 16:52:43

标签: linux bash tar

我经常使用-h的{​​{1}}标记来创建包含从我正在压缩的目录链接到的所有库的tarball,但它必须产生双重压缩所有的副作用目录中的内部链接。

例如,我有两个非常大的数据集,并使用符号链接选择我的测试应用程序使用哪一个,所以我最终得到其中一个两次。这使得tarball 方式比它需要的更大。

那么,有没有办法让tar只取消引用链接,如果它们指向一个尚未包含在tarball中的文件?

感谢。

1 个答案:

答案 0 :(得分:1)

使用find来制作要包含在tar球中的文件列表。

find . -exec realpath '{}' ';' | sort | uniq | tar -T -