我怎样才能将centos上的很多文件从一个目录移动到另一个目录?

how can i move a lot of files on centos from one directory to another?

我一直在尝试将 Centos 6 上的很多文件从一个目录移动到另一个目录;我说的是数以千计的 .wav 录音,大约 230 GB。

我会用 crontab 来做,我有这个命令:

find /var/spool/asterisk/backups/ -name ".wav" -exec mv /usr/src/scripts/ {} \

问题是我想先将它与 cp 一起使用,而不是 mv 来查看它是如何工作的,但它什么也没做,所以我怎么知道上面那个mv 有效吗?

我发现了我的失败之处:我在逗号之间的 wav 之前缺少 *。

如果文件不多

mv /var/spool/asterisk/backups/*.wav /usr/src/scripts/

如果你有大量的文件,那么它会因为命令行太长而失败,你的 "find" 可能会花很长时间,因为它一次移动一个文件(在你的情况下,它是错误的方式,它是 SRC DEST 而不是 DEST SRC)

你可以使用像

这样的东西
find /var/spool/asterisk/backups/ -name "*.wav"|xargs -n 100 mv --target-directory=/usr/src/scripts/

然后你一次移动 100 个文件,应该会加快速度。

要查看它的作用,您可以像 "echo mv ...|head" 一样在其前面加上 "echo" 前缀,然后从输出中复制并粘贴一行。

要测试一下,您可以使用 "cp -a" 而不是 mv