tar 特定文件数

sou*_*010 3 linux bash tar

我有一个包含 27K 文件的目录,我想将它们压缩成多个INDEPENDENT tar 文件,每个文件有 5000 个文件,最后一个显然有 2K(27K 不能被 5 整除)。

最快/最简单的方法是什么?

Rob*_*ers 8

首先使用每个存档的文件名创建文件:

find <directory> | split -l 5000 - files.
Run Code Online (Sandbox Code Playgroud)

然后创建焦油:

for f in files.*; do tar -cf $f.tar --files-from $f; done
Run Code Online (Sandbox Code Playgroud)

未经测试,但基本思想应该可行。