作为一个程序员,总是会用到Linux,而平常使用时用到的命令基本上就是基础常用的那几个命令,遇到复杂点的操作就不太会了,然后百度搜索,找到可用的命令完成工作就行了,也不求甚解。现在呢,有点时间,就想着好好学习一下Linux的命令,增强一下Linux使用的知识,做下笔记,以便以后回顾。
首先学习的是管道线,原因是因为 ps -aux | grep tomcat 这条命令,平时总是使用这条命令查看tomcat的运行情况,但是对这个“|”不是很清楚,所以就从它开始学习了。
命令从标准输入读取数据并输送到标准输出的能力被一个称为管道线的 shell 特性所利用。使用管道操作符 “|”(竖杠),一个命令的标准输出可以通过管道送至另一个命令的标准输入:
command1 | command2
管道线经常用来对数据完成复杂的操作。有可能会把几个命令放在一起组成一个管道线。通常,以这种方式使用的命令被称为过滤器。过滤器接受输入,以某种方式改变它,然后输出它。
接下来通过几个命令来演示它的使用。
ls /usr/bin
上述命令显示 /usr/bin 下的所有内容,从截图中可以看到该目录下内容很多,此时想查找该目录下包含 zip 字段的文件,就可以通过管道线来完成,将 ls 查看的内容作为输入,通过 grep 命令匹配查找内容,命令如下:
ls /usr/bin | grep zip
从命令执行结果中可以看出,ls 命令执行的结果作为了 grep 命令的输入,grep 根据 ls 查看的内容进行匹配,查找出包含 zip 字段的文件展示。
管道线上的命令是可以向后扩展的,根据实际的操作需求向上添加就可以了,比如说我现在想知道包含 zip 字段的文件有多少个,就可以在上述的管道线中加上 wc 命令进行统计,命令如下:
ls /usr/bin | grep zip | wc -l
可以看到结果是20,说明包含 zip 字段的文件有20个。
通过上述的演示,简单的展示了管道线的使用,利用管道线的功能可以很方便的完成诸多复杂的操作。
关于管道线内容的参考来自《快乐的Linux命令行》一书。
新建了一个自己的个人网站,欢迎前来拍砖,地址:http://www.techxiaoz.xyz
公众号