在Linux中使用管道(|)

时间:2014-02-21 04:57:12

标签: linux

我对python中管道|的使用感到有点困惑。我需要深入解释它的意义。用户请赐教我这个。

假设我发出了一个命令ps aux | grep python,然后它显示了在机器上运行的python进程。我理解它,但我需要分析和详细的知识。请帮帮我。

3 个答案:

答案 0 :(得分:2)

首先,当你运行ps aux | grep python时,它不是你所说的Python,它是unix,通常在bash shell中。其次,管道操作符意味着您正在获取第一个函数的输出并将其输入到第二个函数中。

在这种情况下,您将从ps aux获取流程列表的结果,并使用grep python从中找到与python有关的任何内容。 grep命令意味着您正在ps。

输出的进程列表中搜索字符串“python”

答案 1 :(得分:1)

你列出的那个命令是一个shell命令,与Python没有任何关系。你在说:

“运行命令ps aux,而不是向我显示结果,而是将结果作为输入提供给grep python”。或者,换句话说,“将第一个命令的输出传送到第二个命令的输入”。

grep接受输入并显示包含grep后面的参数的输入的所有行的输出。因此grep python显示ps aux中包含单词python的所有行。

这里没有以任何方式调用Python - 您只是在python中过滤了该文字字符串ps aux

答案 2 :(得分:0)

|作为andps aux

两个语句的grep python

因此,当您键入ps aux | grep python时,它将返回两个语句的公共结果。