Linux系统的输入与输出

在Linux系统中正确输出的编号为1,错误输出的编号为2

管理输入输出的符号:

1.

(1)输出重定向:

>重定向正确输出
2>重定向错误输出
&>重定向所有输出

注意:每次输出后会覆盖文件原本内容
直接“>“ 文件名 可以直接清空文件内容
示例: 以下实验必须在student用户下完成
首先我们通过命令find /etc -name passwd 查找etc目录下含有名称为passwd的文件
在这里插入图片描述
共有2个正确输出和17个错误输出
1)定向正确输出到file
在这里插入图片描述

2)定向错误输出到file.err
在这里插入图片描述
3)定向所有输出到file.all
在这里插入图片描述
4)定向正确输出到file同时定向错误输出到file.err
在这里插入图片描述
5)清空文件file
在这里插入图片描述
(2) 输出追加

>>追加正确输出到文件最后
2>>追加错误输出到文件最后
&>>追加所有水出到文件最后

示例:
同样我们通过命令find /etc -name passwd 查找etc目录下含有名称为passwd的文件在这里插入图片描述
定向正确输出到file
在这里插入图片描述
此时文件file 内容为
在这里插入图片描述
再追加错误输出到文件file内
在这里插入图片描述
此时文件file的内容为
在这里插入图片描述
我们可以看到错误输出被追加到文件file的最后

2."|" 管道符 将输出变成输入 管道符只能通过编号为1 的正确输出

示例:显示/etc/passwd文件的第15-18行内容
首先我们可以通过vim查看/etc/passwd文件的第15-18行内容为
在这里插入图片描述
要显示第15-18行我们可以先显示其前18行再显示这18行的后4行,此时便需要用管道符“|"将前18行的输出转为输入
在这里插入图片描述

3.“tee” 复制输入变成输出

示例:显示/bin中文件名包含大写字母的文件,保存到bin_file文件中并统计个数显示到屏幕
如题我们需要对一个输出进行两种操作此时便需要用到“tee“来对输出进行复制
首先我们通过指令
在这里插入图片描述
查看目录bin下文件名包含大写字母的文件
然后我们便可通过管道符“|“与“tee“复制该输入保存到bin_file文件中,并通过管道符“|“将该输出变为输入再执行wc -l指令统计其个数显示到屏幕
在这里插入图片描述

4.“2>&1” 把错误输出的编号由2转变为1

以该输出为例
在这里插入图片描述
若想对该输出进行行数统计则需要该输出通过管道符“|“后执行wc -l 指令
但是由于管道符“|“只能通过编号为1的正确输出所以若直接执行find /etc -name passwd | wc -l指令,错误输出无法经过管道符而显示到字符栏,只有两个正确输出经过管道符并执行指令wc -l 得到错误结果2
在这里插入图片描述
所以为了使错误输出能够通过管道符,需要通过“2>&1将该输出的错误输出的编号由2改成1,如此便可使所有输出通过管道符执行wc -l指令得到正确答案
在这里插入图片描述

例题:在student用户下查找/etc下passwd文件,显示命令输出并保存输出到file.all中

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值