在Linux中复制时如何排除某些大小的文件
时间:2020-03-21 11:47:49 来源:igfitidea点击:
我在备份过程中遇到的一个问题是一些大型文件需要很长时间才能复制。
我必须复制一些大小超过3GB的电影。
因此,我认为最好是排除大文件或者任何不重要的文件,以便尽快完成备份,这样会更好。
因此,只要有空闲时间,我就可以复制其余文件。
如果我们曾经遇到过和我一样的情况,这是一个简单的技巧,可以在类似Unix的操作系统中使用rsync和/或者find命令从复制中排除某些大小的文件。
在Linux中从复制中排除某些大小的文件
就像我说的,我们可以使用rsync或者find命令来做到这一点。
使用“ rsync”命令从复制中排除某些大小的文件
在阅读rsync命令的手册页时,我知道有一个选项可以从复制中排除某些大小的文件。
我们可以简单地省略它们以进行复制。
有空时,我们可以复制其余的排除文件。
假设我们要排除大于5 MB的大小。
我们所要做的就是在rsync命令中使用“ --max-size = SIZE”选项。
此选项将不传输任何大于指定大小的文件。
请允许我给我们展示一个简单的例子。
$rsync -rv --max-size=5m /home/sk/Downloads//home/sk/theitroad/
其中
- rsync-快速,通用,本地和远程文件复制工具
- -rv-递归和详细模式
- --max-size = 5m-不会传输大于5 MB的文件。
- /home/sk/Downloads /-源目录
- /home/sk/theitroad /-目标目录。
上面的命令会将/home/sk/Downloads /目录中5MB以下的所有文件复制到/home/sk/theitroad /目录中。
它将排除所有大于5MB的文件。
我们也可以使用“ --min-size = SIZE”来传输任何小于指定大小的文件。
例如,要传输小于10 MB的文件,请运行以下命令:
$rsync -rv --min-size=10m /home/sk/Downloads//home/sk/theitroad/
使用“查找”命令从复制中排除某些大小的文件
我们还可以使用find和cp命令从复制中排除某些大小的文件。
看一下以下命令:
$find . -size -10M -exec cp -r {} /home/sk/theitroad/\;
上面的命令将在当前目录中找到10 MB以下的所有文件,并将它们复制到/home/sk/theitroad /目录。