文件描述符:
0 —— stdin 标准输入
1 —— stdout 标准输出
2 —— stderr 标准错误信息输出
linux系统的标准输入是键盘,标准输出是显示器,如果要改变标准输入或标准输出,可以使用重定向。
重定向符号有'<'和'>'
1. 将标准输出重定向到文件中
$ echo "This is text 1" > temp.txt 重定向到temp.txt之前会把文件里的内容清空
$ echo "This is text 2" >> temp.txt 把标准输出追加到temp.txt文本的末尾,不会清空之前的内容
2. 从文件读取输入
$ wc -l < temp.txt
3. 对标准输出和标准错误重定向
$ echo text > a1
$ cp a1 a2; cp a2 a3;
$ chmod 000 a1
$ cat a* (注:这里执行命令的用户是非root用户,如果用root用户执行,不会有标准错误输出)
cat: a1: Permission denied
text
text
$ cat a* 2> error.txt #标准错误被重定向到error.txt
a1
a1
$ cat error.txt
cat: a1: Permission denied
$ cat a* 2> error.txt 1> out.txt
屏幕上不会有任何输出
$ cat error.txt
cat: a1: Permission denied
$ cat out.txt
a1
a1
阅读(1181) | 评论(0) | 转发(0) |