51学通信论坛2017新版

标题: 1.6 管道(一个命令的输出作为另一个命令的输入) [打印本页]

作者: admin    时间: 2017-12-17 23:34
标题: 1.6 管道(一个命令的输出作为另一个命令的输入)
    有时候,需要将一个命令的输出作为另一个命令的输入。这可以用重定向来实现,只是有些笨拙。         以下是用重定向实现的方法:
  1. $ rpm -qa > aaa
  2. $ sort < aaa
复制代码
rpm -qa命令可以生成已经安装的RPM包都有哪些,并重定向到aaa文件。然后第二行,执行more命令(即分页显示输出,每显示一页后停顿,按任意键继续),并且把aaa文件的内容作为输入。    同样的效果,可以用管道符|来实现,只需要以下一条命令就可以实现同样的效果。或者执行sort命令对其进行按首字母进行排序输出。
   $rpm -qa | sort | more
     部分输出如下:
  1. [root@python3 shellprogram]# rpm -qa | sort | more
  2. acl-2.2.51-12.el7.x86_64
  3. aic94xx-firmware-30-6.el7.noarch
  4. alsa-firmware-1.0.28-2.el7.noarch
  5. alsa-lib-1.0.28-2.el7.x86_64
  6. alsa-tools-firmware-1.0.28-2.el7.x86_64
  7. audit-2.4.1-5.el7.x86_64
  8. audit-libs-2.4.1-5.el7.x86_64
  9. authconfig-6.2.8-10.el7.x86_64
复制代码
上例输出中,还看到了管道符的嵌套,最后调用了more来分页显示。每显示一页后停顿,按任意键继续。







欢迎光临 51学通信论坛2017新版 (http://bbs.51xuetongxin.com/) Powered by Discuz! X3