永发信息网

请问管道符号|后面接xargs和不接的区别是什么?

答案:2  悬赏:10  手机版
解决时间 2021-11-19 05:16
  • 提问者网友:温旧梦泪无声
  • 2021-11-18 22:33
请问管道符号|后面接xargs和不接的区别是什么?
最佳答案
  • 五星知识达人网友:西岸风
  • 2021-11-18 22:49
xargs对find命令中每个查找到的文件执行grep "user"
find . -name "Makefile" | grep "user"
将find的输出作为grep的输入,查找其中包含user的行
全部回答
  • 1楼网友:天凉才是好个秋
  • 2021-11-19 00:22
帮助里是这样说的:
xargs reads items from the standard input, delimited by blanks (which can be protected with double or single quotes or a backslash) or newlines, and executes the command (default is /bin/echo) one or more times with any initial-arguments followed by items read from standard input.
也就是说,xargs会根据空格或换行符分割标准输入(管道符传递过来的内容),然后根据分割结果多次执行后面的grep命令。这样,每次只针对一个文件执行grep,过滤的就是文件内容。

find的结果是个多行字符串,直接grep的话,就是在这个字符串中进行过滤。这样就如你所说,找的是文件名中包含user的文件。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯