以下内容必考。是重点。
一、重定向
1.重定向输入
如: $ more < killout.txt
2.重定向输出
0代表标准输入,1代表标准输出,2代表标准错误输出
$ ls-l > lsoutput.txt
> 将把该文件的内容覆盖,如果文件不存在就创建
$ps >> lsoutput.txt
>> 是把输出加在文件的尾部
$kill -HUP 1234 > killout.txt 2>killerr.txt 把标准输出和标准错误输出分别重定向到不同的文件。
如果想把两组输出都重定向到一个文件中,可以用>&操作符来结合两个输出,如:
$kill -l 1234 >killouterr.txt 2>&1
二、管道
可以用管道操作符
| 来连接进程。
比如用sort对ps命令的输出进行排序。
如果不使用管道,就必须分几个步骤来完成:
$ ps > psout.txt
$ sort psout.txt >pssort.out
如果用管道:
$ps | sort >pssort.txt
如果想再屏幕上分页显示输出结果,可以再连接第三个进程more:
$ ps | sort | more
复杂一点的示例:
$ps -xo comm | sort | uniq |grep -v sh | more
这个命令首先按照字母顺序排序pa命令的输出,再用uniq命令去除名字相同的进程,然后用grep -v sh 命令删除名为sh 的进程,最终将结果分页显示在屏幕上。