管道命令xargs

在研究hadoop的过程中,遇到一个小难题。

问题描述:我需要将文件夹A下的文件拷贝到文件夹B中,但是以hadoop开头的文件不要拷贝。

问题解决:ls  A|grep -v hadoop|xargs -t -I {} cp {} /B

解释:grep -v 是反选。xargs命令的功能是将管道传来的的信息作为参数赋予马上要执行的命令。

如果该命令是单参数指令,例如rm,那么很简单:

ls A|xargs rm  即可。

如果该命令是多参数指令,例如cp。那可如何是好?

可以赋予-I(是大写的i不是l)选项,-I后面跟着的{}即指代管道传来的信息。

另:-t选项表示打印出所有指令。

原文地址:https://www.cnblogs.com/elnino/p/4437510.html