Linux管道命令
Linux系统中管道命令是linux系统的一个强大之处。
管道命令操作符是:”|”,它只能处理经由前面一个指令传出的正确输出信息,对错误信息信息没有直接处理能力。然后,传递给下一个命令,作为标准的输入.
管理命令的输出说明:
指令1 | 指令2 | 指令3
【指令1】正确输出,作为【指令2】的输入 然后【指令2】的输出作为【指令3】的输入 ,【指令3】输出就会直接显示在屏幕上面了。
通过管道之后【指令1】和【指令2】的正确输出不显示在屏幕上面
【提醒注意】:
1. 管道命令只处理前一个命令正确输出,不处理错误输出;
2. 管道命令右边命令,必须能够接收标准输入流命令才行;
kubectl get pod -A |grep calico
在pod里筛选包含 calico
Linux系统中的管道命令的用法实例详解
test.sh中的命令如下:
echo "vary good";
echo "good!";
echo "pass!";
echo "no pass!"
cat test.sh | grep ip
在test文件中寻找ip字段
读出test.sh文件内容,通过管道发送给grep作为输入内容
cat test.sh | grep -n 'echo'
Shell 命令# 读取test.sh文件内容,通过管道发送给ls命令,但是ls命令不支持标准流输入,因此数据废弃
cat test.sh | ls
补充:Linux系统中管道命令的其它用法补充
利用一个管道
# rpm -qa|grep licq
这条命令使用一个管道符“|”建立了一个管道。管道将rpm -qa命令的输出(包括系统中所有安装的RPM包) 作为grep命令的输入,从而列出带有licq字符的RPM包来。
利用多个管道
# cat /etc/passwd | grep /bin/bash | wc -l
这条命令使用了两个管道,利用第一个管道将cat命令(显示passwd文件的内容)的输出送给grep命令,grep命令找出含有“/bin/bash”的所有行;第二个管道将grep的输入送给wc命令,wc命令统计出输入中的行数。这个命令的功能在于找出系统中有多少个用户使用bash
grep 过滤
ps -ef|grep java查看所有java进程
wc 统计
ls |wc -l统计当前有多少个目录和文件
xargs 传参命令
ls|grep tomcat|xargs rm -rf删除当前目录下包含tomcat的文件和文件夹
awk 文本分析
tee 输出并重定向(注意和重定向符>, >>有区别,输出并且重定向)