重定向输入输出与管道

利用输入/输出重定向
在Linux命令行模式中,如果命令所需的输入不是来自键盘,而是来自指定的文件,这就是输入重定向。同理,命令的输出也可以不显示在屏幕上,而是写入到指定文件中,这就是输出重定向。
接下来看看标准输入/输出重定向在构造一条Linux命令中的实际应用。
1.输出重定向
# ls -l > test1.txt
将ls -l的执行结果保存到test.txt文件中,如果该文件已存在,则覆盖。
#ls -l >> test1.txt
将ls -l的执行结果保存到test.txt文件中,如果该文件已存在,则把结果添加到结尾行。一般常用>>,以免覆盖原文件内容。

2.输入重定向
# sort < test1
将test1文件内容作为输入内容进行排序,并将排序结果显示到屏幕
#sort <test1 >test2
将排序结果输出到test2

3.利用管道
利用Linux所提供的管道符“|”将两个命令隔开,管道符左边命令的输出就会作为管道符右边命令的输入。连续使用管道意味着第一个命令的输出会作为 第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推。下面来看看管道是如何在构造一条Linux命令中得到应用的。
3.1利用一个管道
# rpm -qa|grep licq
这条命令使用一个管道符“|”建立了一个管道。管道将rpm -qa命令的输出(包括系统中所有安装的RPM包)作为grep命令的输入,从而列出带有licq字符的RPM包来。
3.2利用多个管道
# cat /etc/passwd | grep /bin/bash | wc -l
这条命令使用了两个管道,利用第一个管道将cat命令(显示passwd文件的内容)的输出送给grep命令,grep命令找出含有“/bin /bash”的所有行;第二个管道将grep的输出送给wc命令,wc命令统计出输入中的行数。这个命令的功能在于找出系统中有多少个用户使用bash。
常用管道:
ps -ef | grep tomcat ##ps 是Linux系统中用来查看进程的命令,-e 显示所有进程,-f全格式显示
ps -ef | grep java
tail -f | grep 字符

posted on 2014-04-17 14:14  遠離塵世の方舟  阅读(233)  评论(0编辑  收藏  举报

导航