Linux命令(5):管道和过滤器

来源:互联网 发布:淘宝网成品窗帘 编辑:程序博客网 时间:2024/04/28 11:44
1管道
有时候,我们可以把两个命令连起来使用,一个命令的输出作为另一个命令的输入,这就叫做管道
为了建立管道,需要在两个命令之间使用竖线(|)连接。


管道是Linux进程之间一种重要的通信机制;除了管道,还有共享内存、消息队列、信号、套接字(socket) 等进程通信机制


2过滤器
能够接受数据,过滤(处理或筛选)后再输出的工具,称为过滤器


3grep命令
grep 是一个强大的文本搜索工具,可以使用正则表达式,并返回匹配的行
$ls -l | grep "Aug"
-rw-rw-rw-   1 john  doc     11008 Aug  6 14:10 ch02
-rw-rw-rw-   1 john  doc      8515 Aug  6 15:30 ch07
-rw-rw-r--   1 john  doc      2488 Aug 15 10:51 intro
-rw-rw-r--   1 carol doc      1605 Aug 23 07:35 macros
在管道中使用 grep 命令,只允许包含指定字符的行输出到显示器
grep 命令有很多选项:



4sort命令
sort 命令在 Linux 中非常有用,它将文件中的各行按字母或数进行排序。sort命令既可以从特定的文件,也可以从stdin获取输入
通过下面的选项可以控制排序规则




$ls -l | grep "Aug" | sort -r -n
-rw-rw-r--  1 carol doc      1605 Aug 23 07:35 macros
-rw-rw-r--  1 john  doc      2488 Aug 15 10:51 intro
-rw-rw-rw-  1 john  doc      8515 Aug  6 15:30 ch07
-rw-rw-rw-  1 john  doc     11008 Aug  6 14:10 ch02
通过管道将 ls、grep 和 sort 命令连起来使用,过滤包含“Aug”的行,并按照文件大小排序


5pg和more命令
如果文件内容过多,全部显示会很乱,可以使用 pg 和 more 命令分页显示,每次只显示一屏
$ls -l | grep "Aug" | sort -n | more
0 0
原创粉丝点击