请用我能理解的方式解释一下:
ps ax >mytemp; more <mytemp … same as … ps ax | more
cat mytemp | grep barrymp … same as … ps ax | grep “barrymp”
答案1
一次一行,将每一行分成两半:
ps ax >mytemp; more <mytemp
获取 的输出ps ax
并将其放入名为 的文件中mytemp
。分号标记同一行上单独命令的开始。第二个命令获取内容mytemp
并将其输入more
(逐屏显示文件的寻呼机)。然后你的注释说这与真实情况相同,ps ax | more
只是它不创建临时mytemp
文件。两者都有效地获取输出ps ax
并最终使其成为标准输入more
第二行:
cat mytemp | grep barrymp
打印调用 stdout 的文件的内容,然后将其重定向到已给出的用于过滤输出的命令mytemp
的标准输入。grep
barrymp
然后注释说它与 相同ps ax | grep "barrymp"
。我假设这是因为它应该mytemp
与第一行相同。该行的后半部分同样会跳过临时文件,直接将命令输出重定向到 grep 管道。
尽我所能地尝试将其分解,如果仍然不清楚,请告诉我。