是否有最快的选项将文件从 dir1 cp 到 dir2?

问题描述 投票:0回答:6

我使用 cp 在 Linux 盒子中复制大量小文件(b/n 1M 和 10M 大小;总共约 6G)。没有时间,但由于我要一次又一次地做cp,可以时间吗,稍后再具体一点;但由于cp不是主要任务,如果有更好的选择/选择/方式,就无法忍受所花费的时间。因此,如果有更好的方式/选项/方法来将文件从一个目录 cp-ing(更快)到另一个目录,请很高兴尝试一下。

谢谢,

linux command copy-paste
6个回答
3
投票

tar/untar 或

rsync
当被告知不要校验和时会更快,因为它们批量读取文件而不是逐一处理它们。


1
投票

你可以尝试cpio,因为它有一个复制目录到目录模式。


1
投票

使用 perl 进行最快的复制:

use File::Copy::syscopy;  # preserves OS specific file attributes
copy($foo,$bar) or die "cannot copy $foo to $bar: $!";  # always check for errors!

1
投票

尝试一下备份今天的文件:

find /home/me/files -ctime 0 -print -exec cp {} /mnt/backup/{} \;

来自: http://commandperls.com/find-all-today%E2%80%99s-files-and-copy-them-to-another-directory/


1
投票

你尝试过吗:

time (cd /usr/local/src/ && tar pcf - cvs.gnome.org) | buffer -m 8m -p 75 | (cd /mnt/tmp/src/ && tar pxf -) 

(来源:https://lists.debian.org/debian-user/2001/06/msg00288.html


0
投票

你可以使用焦油。这是我发现的最快的方法。

cd /path/to/SOURCE_FOLDER; tar cf - . | (cd /path/to/DESTINATION_FOLDER; tar xvf -)

此命令将 SOURCE_FOLDER 的内容压缩到 tar 存档中,然后将该存档提取到 DESTINATION_FOLDER 中,同时保留目录结构。

© www.soinside.com 2019 - 2024. All rights reserved.