我有一个需要在
Linux系统上复制的文件列表 – 每个文件的大小从10到100GB不等.

我只想复制到本地文件系统.有没有办法以简单的方式并行执行此操作 – 每个负责复制文件的多个进程?

我可以轻松编写一个多线程程序来执行此操作,但我很想知道是否有一个低级Linux方法来执行此操作.

解决方法

如果您的系统没有被它打乱(例如,文件可能在缓存中),那么GNU Parallel
http://www.gnu.org/software/parallel/可能适合您:

find . -print0 | parallel -0 -j10 cp {} destdir

这将运行10个并发cps.

亲:阅读简单.

Con:GNU Parallel在大多数系统上都不是标准配置 – 因此您可能需要安装它.

观看介绍视频了解更多信息:http://www.youtube.com/watch?v=OpaiGYxkSuQ

有关并行磁盘I / O的讨论,另请参见https://oletange.wordpress.com/2015/07/04/parallel-disk-io-is-it-faster/.

dawei

【声明】:唐山站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。