什么是’|’ (垂直条)字符在终端命令中的意思?

示例:在终端命令中

  xdpyinfo |  grep决议 

(我从答案中得到),是吗?

  | 

性格意味着

  xdpyinfo 

输出应发送到grep程序输入,用于打印包含该行的行

 解析度 

串? 我应该在哪里寻求这样的信息,以避免通过太简单的问题填补这个论坛? 谢谢。

竖条| 通常被称为“管道”。 它用于将一个命令传递给另一个命令。 也就是说,它将第一个命令的输出定向到第二个命令的输入。 所以你的解释非常准确。

它被称为pipe (或pipeline ),它意味着它前面的命令输出作为其后面的命令的输入。

例:

 dmesg | tail bash --version | tac 

欢迎您在没有管道的情况下尝试命令。

是的,你是对的:在这种情况下,命令xdpyinfo显示信息,并将其解析为grepgrep过滤结果,仅显示具有resolution行。

有关pipe更多信息:

你的解释是正确的。 | character将第一个命令的输出管道输入到第二个命令的输入流中。 这两个命令实际上并行运行,作为两个并发进程。 它是“管道和filter范例”(通过流水线简单构建复杂function)的一个例证,这是Unix的标志。

有关这方面的更多信息,我建议您按照bash或shell脚本的一些教程进行操作。 有很多这样的网络。 我打赌你会对Unix / GNU shell的优雅和强大感到惊讶。

人物| 有时也称为管道,用于连接一个命令的输出并将其输入另一个命令。

这样xdpyinfo | grep resolution xdpyinfo | grep resolution首先运行命令xdpyinfo (显示有关X的信息的实用程序),而不显示任何输出。 此命令的输出将输入grep(正则表达式解析器)以查找包含分辨率的任何条目。

您看到的只是您想要的信息,而不是xdpyinfo命令的完整输出。