考虑以下…当我执行’ls’而没有任何标志时,它会将结果返回到一行,如下所示:
me@myComp /cygdrive/c/test/
$ls
folder1/ folder2/ folder3/
现在,如果我想对结果进行grep,说’2′,我会得到以下结果:
me@myComp /cygdrive/c/test/
$ls | grep 2
folder2/
它不应该返回整条线路吗?我希望这个结果我用过ls -l | grep 2.
在我看来,管道运算符正在以某种方式将输入更改为grep,或者以某种方式ls意识到管道并更改其自己的输出.
folder1 / folder2 / folder3 /是单个字符串,不是吗?那么grep怎么知道只返回folder2 /,而不是folder1 / folder2 / folder3 /?
最佳答案