标签:设备 输入输出 数字 通过 整数 lin 定义 定向 接下来
1:标准输出和标准错误重定向
2:利用<操作符将文件读入stdin
3:自定义文件描述符
4:tee命令
1:例如echo命令就是将指定的字符串送到标准输出,那么我们就可以结合echo命令将指定字符串发送到指定的文件:
在这里就是将文件描述符stdout(1)的内容通过重定向操作符重定向到了test.txt文件里。
在处理错误时,来自stderr的输出被倾倒入了文件/dev/null中,/dev/null是一个特殊的设备文件,他会丢弃接收到的任何数据。也常被称为黑洞,因为但是进入其中的数据都将一去不复返。同样的我们可以将标准错误输出也重定向到文件中,以供保存。
接下来这个命令会将stderr文本打印到屏幕上,而不是重定向到文本中,因为默认情况下重定向操作符针对的是标准输出,而这里stdout并没有输出,而是stderr输出
在重定向操作符前指定stderr文件描述符,就可以重定向stderr了
2: 从stdin读取输入的命令能以多种方式接收数据:
借助小于符号,我们可以像使用stdin那样读取文件中数据: cmd<file; (cmd命令需要文件数据)
还有使用管道时,经常将前一个命令的标准输出重定向成下一个命令的标准输入,cmd1 | cmd2。
3:使用exec命令创建一个用于读取的文件描述符(符号&表明后边的数字是一个文件描述符):
创建一个用于写入的文件描述符:
4:标准输出既可以被重定向到文件,也可以通过管道传入其他程序,但不能同时进行,命令tee可以实现这个操作,tee命令从stdin读取,将数据重定向到文件中,然后还将数据重定向到标准输出(stdout)中:cmd | tee file1 file2 | othercmd
例如ls命令列出和cat命令查看文件内容的结果均为标准输出:
-a 指定以追加的方式保存到文件
本知识点需了解exec命令,以及对文件的打开模式,标准输入输出的初步了解。
标签:设备 输入输出 数字 通过 整数 lin 定义 定向 接下来
原文地址:https://www.cnblogs.com/hongbo-tao/p/11722113.html