[英]Copy large amout of files xargs
我正在尝试使用xargs命令将大量文件从一个目录复制到另一个目录。 但是,这一做法似乎行不通。
# echo * |xargs cp -r /directry/destination
我做错了什么?
它返回的是:
cp: target `file name' is not a directory
find -maxdepth 1 -mindepth 1 -exec cp -r -t /directry/destination {} ';'
缺省情况下,当有多个源Directlry时,cp会将LAST参数解释为目标目录,但是通过这种方式,您可以使用cp -r target source1 source2 source3...
因此,您会认为您打算将内容复制到最后一个源而不是目标。 如果使用的是gnu coreutils,则应该使用-t
或--target-directory
开关,以便可以指定要用作目标的目录,以便可以使用echo * | xargs cp -r --target-directory /directory/destination
echo * | xargs cp -r --target-directory /directory/destination
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.