原创

linux管道和xargs区别

1.先理解一下概念

|管道
将前一个命令的输出作为标准输入传给后面的命令,不会用到任何中间文件与缓冲区。
xargs
将前一个命令的输出作为命令行参数传给后面的命令。

2.命令举例

[root@bogon ~]# ls | echo `cat`
anaconda-ks.cfg i.txt lshTool nohup.out shinit.sh

1)可以看出来管道会吧ls的标准输入作为传给面的命令。但是echo是需要参数的,这里只能先cat一下 才可以输出
2)看xargs效果

[root@bogon ~]# ls | xargs echo
anaconda-ks.cfg i.txt lshTool nohup.out shinit.sh

从实例可以看出来xargs把前一个命令的输出作为echo命令的参数了,所以直接就输出了

这个例子又简单又清晰

正文到此结束
本文目录