每天学点Linux命令: 管道| 与 xargs的区别
先看一个例子:
find ./ -print | xargs grep a
输出:
grep: ./: 是一个目录 ./less:abc ./afile:abcde ./afile:AaAbBcB ./afile:ab ./haha:abc ./cfile:abcqw
find ./ -print | grep a
输出:
./afile
./haha
区别:管道命令是将前面命令的输出作为后面命令的标准输入 -》所以第二条命令输出了在 所有文件名中包含a的文件名
xargs命令将标准输入作为命令的参数 -》导致的结果是:第一条命令grep a 在所有的文件中搜索包含a的文件
再举一个例子:
echo "--help"|cat #--help echo "--help"|xargs cat #打印出help文档