linux实现标准设备输入输出,Linux的标准输入和输出

本文详细介绍了Linux系统中命令输出的重定向方法及其工作原理,包括标准输出与错误输出如何通过不同的文件描述符被定向到文件或设备中。此外,还探讨了如何使用特殊文件/dev/null来忽略不需要的命令输出。

设备

设备文件名

文件描述符

类型

键盘

/dev/stdin

0

标准输入

显示器

/dev/sdtout

1

标准输出

显示器

/dev/sdterr

2

错误标准输出

1、命令 > 文件

将命令的正确输出,写入到指定文件或设备中去,并对之前的内容进行覆盖。如果文件不存在,会新建一个文件

2、命令 >> 文件

将命令的正确输出,写入到指定文件或设备中去,采用追加的方式。该方式会保留原本文件中的内容。

3、命令 2> 文件

将命令的错误输出,写入到指定的文件或设备中去,并对之前内容进行覆盖。下面例子中,当命令正确的时候,标准输出正常打印到显示器,当命令错误的时候,将错误信息写入了test.log中

4、命令 2>> 文件

将错误标准输出的信息,写入到其他文件中,并用追加的方式,不会覆盖文件原本的内容。

5、命令 > 文件 2>&1 | 命令 &> 文件

这两种方式,是将命令的错误输出和正确输出,都保存到同一个文件中,采用覆盖的方式,不会保留文件原本的内容。

6、命令 >> 文件 2>&1 | 命令 &>> 文件

这两种方式是将命令的错误输出和正确输出,都保存到同一个文件中,采用追加的方式,会保留文本原本的内容。

7、命令 >> 文件1 2>>文件2

将命令正确的输出,写入到文件1中,将命令错误的输出写入到文件2中

需要注意:/dev/null 会经常应用,该路径表示一个空目录空文件,可以理解为“黑洞”,放入这个路径的内容,是不会保存的,即放入就消失了,再也找不到。当我们不想在显示器中显示命令输出,也不想保存到文件中,就可以用/dev/null

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值