shell 管道
shell通过管道命令:|,可以将多个命令连接起来执行,前一个命令的输出作为后一个命令的输入:
命令1 | 命令2 | 命令3
命令1 |& 命令2
如果使用了|&命令,命令1的标准错误输出将会和命令2的标准输出相连,即2>&1 |的简写形式。
如果我们想统计一个文件有多少行,可以使用管道组合命令来完成:
root@pc:/home/demo# cat log
hello
zhaixue.cc
hello
world
bye
root@pc:/home/demo# cat log | wc -l 统计文件行数
5
root@pc:/home/demo# cat log | grep "hello" 搜索字符串
hello
hello
root@pc:/home/demo#
在这个例子中,cat log命令的输出作为下一个命令的输入。通过运行结果我们可以看到,通过管道,第一个命令的标准输出就相当于重定向到了下一个命令的标准输入。
管道常和下面的命令一起结合使用
sort命令
排序,默认以首字母排序,-n以数字排序,-r反向排序,-t分隔符
root@pc:/home/demo# cat log
hello
zhaixue.cc
hello
world
bye
root@pc:/home/demo# cat log | sort
bye
hello
hello
world
zhaixue.cc
root@pc:/home/demo# cat log | sort -r
zhaixue.cc
world
hello
hello
bye
root@pc:/home/demo#
wc命令
统计,-l参数统计行数,-w参数统计单词数,-m参数统计字符数
root@pc:/home/demo# cat log
hello
zhaixue.cc
hello
world
bye
root@pc:/home/demo# cat log | wc -l
5
root@pc:/home/demo# cat log | wc -m
34
root@pc:/home/demo# cat log | wc -w
5
《Linux三剑客》视频教程:Linux下开发工具vim、Git、Makefile、autotools、qemu、debug精讲,从零开始一步一步写项目的Makefile,提供企业级Makefile模板,Git操作实战,vim从新手到高手,一步一步打造类似Source Insight的IDE!详情点击:王利涛老师个人淘宝店:Linux三剑客