递归复制一定大小以下的文件和文件夹

递归复制一定大小以下的文件和文件夹

如何使用相同的文件夹层次结构递归复制所有文件和文件夹。然而,我只想复制特定大小的文件。

答案1

您可以使用rsync--max-size选项。

答案2

使用find -exec

cd /path/to/source
find . -size -50k -type f -exec cp --parents {} /destination/ \;

答案3

POSIXly,并假设文件路径不包含换行符:

find . -type f -size -10000c | pax -rw /destination/

这里适用于小于 10000 字节的文件。

一些find实现有一个-print0谓词,一些pax实现有一个相应的-0选项,导致文件列表以 NUL 分隔,这将解决新队上面提到的限制。

相关内容