管道命令符的作用也可以用一句话来概括“把前一个命令原本要输出到屏幕的标准正常数据当作是后一个命令的标准输入”。
完全可以把下面这两条命令合并为一条:
➢ 找出被限制登录用户的命令是 grep “/sbin/nologin” /etc/passwd;
➢ 统计文本行数的命令则是 wc -l。
现在要做的就是把搜索命令的输出值传递给统计命令,即把原本要输出到屏幕的用户信
息列表再交给 wc 命令作进一步的加工,因此只需要把管道符放到两条命令之间即可,具体如
下。
zoupeng@zoupeng-ThinkPad-X1-Carbon-5th:~$ grep "/sbin/nologin" /etc/passwd | wc -l
33
再比如用翻页的形式查看/etc 目录中的文件列表及属性信息:
zoupeng@zoupeng-ThinkPad-X1-Carbon-5th:~$ ls -l /etc/ | more
total 1400
drwxr-xr-x. 3 root root
97 Jul
10 17:26 abrt
-rw-r--r--. 1 root root
16 Jul
10 17:36 adjtime
-rw-r--r--. 1 root root 1518 Jun
7 2013 aliases
-rw-r--r--. 1 root root 12288 Jul
10 09:38 aliases.db
drwxr-xr-x. 2 root root
49 Jul
10 17:26 alsa
drwxr-xr-x. 2 root root 4096 Jul
10 17:31 alternatives
-rw-------. 1 root root
541 Jan
28 2017 anacrontab
-rw-r--r--. 1 root root
55 Jan
29 2017 asound.conf
-rw-r--r--. 1 root root
1 Jan
29 2017 at.deny
drwxr-xr-x. 2 root root
31 Jul
10 17:27 at-spi2
drwxr-x---. 3 root root
41 Jul
10 17:26 audisp
drwxr-x---. 3 root root
79 Jul
10 17:37 audit
drwxr-xr-x. 4 root root
94 Jul
10 17:26 avahi
--More--
也可以这样使用:“命令 A | 命令 B | 命令 C”
通配符就是通用的匹配信息的符号,比如星号(*)代表匹配零个或多个字符,问号(?)代表匹配单个字符,中括号内加上数字[0-9]代表匹配 0~9 之间的单个数字的字符,而中括号内加上字[abc]则是代表匹配 a、b、c 三个字符中的任意一个字符。
zoupeng@zoupeng-ThinkPad-X1-Carbon-5th:~$ ls -l /dev/tty*
crw-rw-rw- 1 root tty 5, 0 Jun 6 21:53 /dev/tty
crw--w---- 1 root tty 4, 0 Jun 6 16:26 /dev/tty0
crw--w----