Linux管道命令(pipe)

Linux管道命令(pipe),第1张

管道命令就是用来连接多条指令的,前一条指令的输出流向会作为后一条指令的 *** 作对象。

管道命令的 *** 作符是:|,它只能处理由前面一条指令传出的正确输出信息,对错误信息是没有直接处理能力的。然后,传递给下一条指令,作为 *** 作对象。

基本格式:

指令1 | 指令2 | …

【指令1】正确输出,作为【指令2】的输入,然后【指令2】的输出作为【指令3】的输入,如果【指令3】有输出,那么输出就会直接显示在屏幕上面了。通过管道之后【指令1】和【指令2】的正确输出是不显示在屏幕上面的。

【提醒注意】

管道命令只能处理前一条指令的正确输出,不能处理错误输出

管道命令的后一条指令,必须能够接收标准输入流命令才能执行。

使用示例

1、分页显示/etc目录中内容的详细信息

$ ls -l /etc | more

2、将一个字符串输入到一个文件中

$ echo “hello world” | cat >hello.txt

利用Linux所提供的管道符“|”将两个命令隔开,管道符左边命令的输出就会作为管道符右边命令的输入。 连续使用管道意味着第一个命令的输出会作为 第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推。下面来看看管道是如何在构造一条Linux命令中得到应用的。

注意:

1、管道命令只处理前一个命令正确输出,不处理错误输出。

2、管道命令右边命令,必须能够接收标准输入流命令才行。

这条命令使用一个管道符“|”建立了一个管道。管道将rpm -qa命令的输出(包括系统中所有安装的RPM包)作为grep命令的输入,从而列出带有licq字符的RPM包来。

这条命令使用了两个管道,利用第一个管道将cat命令(显示passwd文件的内容)的输出送给grep命令,grep命令找出含有“/bin /bash”的所有行;第二个管道将grep的输出送给wc命令,wc命令统计出输入中的行数。这个命令的功能在于找出系统中有多少个用户使用bash。

区别是:

1、左边的命令应该有标准输出 | 右边的命令应该接受标准输入

左边的命令应该有标准输出 >右边只能是文件

左边的命令应该需要标准输入 <右边只能是文件

2、管道触发两个子进程执行"|"两边的程序;而重定向是在一个进程内执行

这些都是网上总结很多的,其实只要多加清楚用法,也一定有自己的一份不同描述。

linux中管道符的使用非常普遍

管道符的用法是将第一个命令的结果传递给第二个命令作为输入

管道符的使用有两个条件:

格式: 命令1 | 命令2

常见应用举例:netstat -an | grep ESTABLISHED | wc -l #查看服务器上连接了多少客户端

wc -l 是查看输入了多少行


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7302240.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-04
下一篇2023-04-04

发表评论

登录后才能评论

评论列表(0条)

    保存