Linux学习第五节课-标准I/O和管道
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux学习第五节课-标准I/O和管道相关的知识,希望对你有一定的参考价值。
Linux学习第五节课------------------------------------------------------------------------------------------------------------------------------------------------------------------
三十一、标准输入和输出
程序:指令+数据
读入数据:Input
输出数据:Output
打开的文件都有一个fd: file descriptor (文件描述符)
Linux给程序提供三种I/O设备
标准输入(STDIN)-0 默认接受来自键盘的输入
标准输出(STDOUT)-1 默认输出到终端窗口
标准错误(STDERR)-2 默认输出到终端窗口
I/O重定向:改变默认位置
三十二、操作符号
> 把STDOUT重定向到文件,把正确的结果输出到文件;
2> 把STDERR重定向到文件,把错误的提示输出到文件;
&> 把所有输出重定向到文件,把所有结果输出到文件;
>>追加内容;
2> 覆盖重定向错误输出数据流;
2>> 追加重定向错误输出数据流;
&> 覆盖重定向;
&>> 追加重定向;
命令> 文件 2>&1 (顺序很重要);
命令 >> /path/to/file.out 2>&1;
():合并多个程序的STDOUT,( 命令1 ; 命令2 ) > all.txt;
<重定向标准输入,可以理解为影响,tr 'a-z' 'A-Z' < /etc/issue,tr命令结果产生的效果影响到/etc/issue,使该文件下所有小写字母变成大写字母;
cat > file 输入后回车会出现光标闪烁,输入回车file文件有内容;
cat > filea < fileb 输入后fileb文件内容会出现在filea中;
<<终止词,邮件或脚本开头可用,输入后文本内容中再次出现终止词即为输出终止,一般用EOF
三十三、管道
命令1|命令2|命令3|....将命令1的正确结果传给命令2,处理后的正确结果再传给命令3,以此类推,此命令只传送正确结果,如果想错误结果也一起传递,可以用2>&1 或 |&
以上是关于Linux学习第五节课-标准I/O和管道的主要内容,如果未能解决你的问题,请参考以下文章