Linux输入输出流

Linux的shell和UNIX一样,对输入输出流有三个基本的功能。第一个是小于号<,表示输入重定向,用文件的内容作为输入流,如“prog >./a.txt”,就会把a.txt的内容作为prog程序的输入。第二个功能是是管道|,管道的功能是把前面文件的输出作为后面文件的输入,一般的用法如“prog1 | prog2”。第三个功能是大于号>,表示输出重定向,会把程序的标准输出重定向到文件中。

这三者结合,就能够产生无穷多种效果了,很方便。比如我们要在a.txt文件里找有str那几行,可以用这条命令“cat <./a.txt | grep str >./b.txt”,把结果保存在b.txt再慢慢看。有了输入重定向,程序可以不用专门给文件名预留一个参数的位置了,很像中大的Sicily的设计和其它高校的ACM系统。有了重定向输出,我们可以很容易做到日志的功能,就算程序原本没这个功能。这三样工具,是命令行界面的一个极强和效率极高的工具,怪不得Linux早期的高手一直不肯离开命令行界面。

Advertisements

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s