我想做类似的事情:
find . -type f | xargs cp dest_dir
但是xargs
将dest_dir
用作初始论证,而不是最终论证.我想知道:
是否可以指定最终参数xargs
?
任何其他替代方案可以达到相同的效果?
一个可能的,但繁琐的替代方案是:
find . -type f | while read f ; do echo cp $f dest_dir ; done
我不喜欢这个,因为cp
会启动几十个进程.
-I
选项用replace-str
从标准输入读取的名称替换initial-arguments中的出现.
例如:
find . -type f | xargs -I file cp file dest_dir
应该解决你的问题.
以下教程中的更多细节:
http://www.cyberciti.biz/faq/linux-unix-bsd-xargs-construct-argument-lists-utility/
特别是关于{}
作为参数列表标记的部分