Linux中的输入输出管理

Linux中的输入输出管理

1.什么时输入输出?

1)字符设备:字符设备就是显示字符到屏幕上的设备文件

2)stdin 标准输入
标号为0
例如:键盘、鼠标、打字机

3)stdout 标准正确输出
标号为1

4)stderr 标准错误输出
标号为2

我们打开一个shell,看一下它的进程,然后在/proc/3060/fd就可以看到标号为0,1,2的文件了
在这里插入图片描述
在这里插入图片描述
这里的文件0,1,2里面就存储了输入和输出

2.如何管理输入

1)< 输入重定向
tr ‘a-z’ ‘A-Z’ < test 把test文件的内容定向到tr程序中在这里插入图片描述
2)<< 多行录入

tr ‘a-z’ ‘A-Z’ < < EOF(此处的EOF可以是任意的字符,作为标识,和后面的标识一样即可)
westos
linux
EOF(当这个字符再次出现时表示录入结束)

在这里插入图片描述

3.如何管理系统的输出
1)输出重定向 >
在这里插入图片描述
输出重定向会覆盖原文件的内容


在这里插入图片描述
椭圆形里面的都是正确的输出,矩形圈中的都是错误的输出。

“>” 输出正确的结果
在这里插入图片描述
正确的输出被输出在了westos文件里面

“2>" 输出错误的结果

在这里插入图片描述

错误的输出被输出在了westos文件里面

“&>" 输出所有的结果

在这里插入图片描述
所有的输出都被输出在了westos文件里面

2)追加 >>

因为输出重定向时会覆盖原文件,所有使用>>就不会覆盖原文件,而是在原文件的基础上向后面继续补充。
">>"在文件原有内容的基础上,向文件内输出正确的输出
"2>>"在文件原有内容的基础上,向文件内输出错误的输出
"&>>"在文件原有内容的基础上,向文件内输出所有的输出

3)管道符 |
把前一条命令的输入变成输出传递到下一条命令进行操作
切记:管道只处理正确的输出
要想用管道输出错误的输出,我们则需要把错误的输出放在正确的输出的文件中,这样错误的输出就可以被输出出来了。
“2>&1"把编号为2的输入转换到编号为1的输出中
管道在一条命令中可以多次被使用
在这里插入图片描述

4)tee 复制输出到指定位置

在这里插入图片描述

把输出的结果复制了一份给了westos文件

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值