Linux日常之数据重定向
Linux在启动后,会默认打开3个文件操作符,分别是
(1)标准输入0,standard input
(2)正确输出1,standard output
(3)错误输出2,standard error
对于一条Linux命令执行的过程是:
(1)首先存在一个输入:可以从键盘输入,也可以从文件输入
(2)若命令成功执行,将会把结果输出到屏幕上(默认是输出到屏幕的)
(3)若命令执行失败,同样会把结果输出到屏幕上(默认也是输出到屏幕的)
在使用的过程中,有时不希望把结果输出到屏幕上,而是希望输出到文件或其他设备上,这是就需要使用所谓的数据重定向。
Linux下的输入输出操作符:
(1)标准输入(stdin):0,使用<或<<
(2)正确输出(stdout):1,使用>或>>
(3)错误输出(stderr):2,使用2>或2>>
注意,其中<或>表示覆盖,<<或>>表示追加
输出重定向
1. 已知test.sh存在,而test1.sh不存在
此时,正确输出和错误输出都显示在屏幕上!
2. 要求,把正确输出写入文件stdout.txt中,错误输出显示在屏幕上
3. 要求,把错误输出写入文件stderr.txt中,正确输出显示在屏幕上
4. 要求,把正确输出和错误输出都写入统一文件stdall.txt中
5. 要求,将错误信息关闭,使用的是2>&-
6. 要求,将所有的输出信息都关闭,使用的是1>&- 2>&-
扩展:“> file 2>&1”与 “2>&1 > file”的区别
(1)“> file 2>&1”,将正确输出和错误输出都重定向到文件file中
(2)“2>&1 > file”,将错误输出显示在屏幕上,将正确输出重定向到文件file中
输入重定向
1. 从键盘获得数据,按下【Ctrl】+d即可保存离开
2. 以给定字符作为结束
3. 从文件file获取数据
posted on 2017-11-29 21:52 一个不会coding的girl 阅读(1524) 评论(0) 编辑 收藏 举报