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和管道的主要内容,如果未能解决你的问题,请参考以下文章

linux第五节课(补三月十六号)

第五章 linux重定向和管道

学习笔记第五节课

初学Linux之标准I/O和管道

Linux——标准I/O以及管道

Linux学习-标准输入输出