如何使用终端复制不大于 200MB 的文件?

don*_*oey 6 command-line

问题说明了一切。我想在终端复制文件,但是有几个大文件我不想复制(因为它们是备份)。有命令可以这样做吗?

cp --max-size=200MB什么?

我知道rsync有这样的选择。这是要走的路吗?

Ben*_*enK 8

尝试使用该find命令构建 200MB 以下的文件列表并将它们复制到dir.

find . -size -200M -exec cp -r {} dir/ \;
Run Code Online (Sandbox Code Playgroud)

  • 使用 `-200` 是必须的,如果你省略 `-`,你将不会得到任何结果。`-` 表示“小于” (2认同)
  • 这对你有用吗?对我来说,它复制所有文件,无论大小。我怀疑是 -r ?find 选择一些目录,然后如果它们包含大文件,由于 cp 上的 -r(递归)标志,它们将被复制,即使这些文件被 find 过滤器排除。 (2认同)

don*_*oey 6

这是我如何做到的rsync

rsync --max-size=200MB --progress --verbose --recursive --links --perms  --ignore-existing --executability --owner --group --times SOURCE TARGET
Run Code Online (Sandbox Code Playgroud)

不过,我仍然想接受一个cp解决方案。