管道和xargs的理解

Posted Think-007

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了管道和xargs的理解相关的知识,希望对你有一定的参考价值。

最近学习了linux的一些命令,看到一连串的管道符合xargs就懵球子了。就仔仔细细的学了学二者的区别

先总体说一下区别:

管道符 |  的意思就是说,将前一个命令的标准输出作为后面一个命令的标准输入

xargs 的意思就是说,把标准输入格式化为一行,作为后面的命令的命令行参数

 

下面我们举个栗子 :

看懂了没? 

cat file.txt 我们看到文件里面是什么内容,然后我们再次 cat file.txt | xargs 一下,发现结果都变成一行了,这就是所谓的格式化为一行。

接下来我们看,cat file.txt | cat  这里再次输出了file.txt文件的内容,这就是前面的标准输出作为了后面的标准输入。

最后我们再看这个 cat file.txt | xargs cat ,上面我们已经看到,命令执行到xargs时候,内容已经格式化为一行了,然后我们在将数据作为后面的命令的命令行参数(不同于标准输入

cat命令报错说没有这些目录,当然这些目录肯定不存在,都是一些随机键入的字符而已。

如果还没看懂,那就将这几个命令反复敲几次吧。书读百遍,其义自见!

以上是关于管道和xargs的理解的主要内容,如果未能解决你的问题,请参考以下文章

xargs的详细解释,记得收藏,相信我你会需要的

管道和xargs区别

xargs管道exec区别

使用 if else 和 xargs 并行管道到 gnu

管道xargs和-exec的介绍与区别

管道xargs和-exec的介绍与区别