RedHat Linux 管理输入输出,管道应用

RedHat Linux 中如何管理命令输入和输出

Linux中: Stdin表示标准输入
输出分为两种“Stdout表示正确输出,Linux中表示为1
Stderr表示错误输出,Linux中表示为2

如何在系统中看到这两种输出结果位置
su - student 先切换到普通用户 ,输入ps’查看当前shell的进程号,
cd命令切换到该进程下,例图中进程为2826,cd /proc/2826/fd 进入,ls -l 列出结果可看到0、1、2,0是当前shell的输入,1是正确输出,2是错误的输出。
在这里插入图片描述

重定向输出

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

用法:我们使用find /etc/ -name passwd 命令 来查找passwd看看结果,很显然出现的结果有正确有错误:如图
在这里插入图片描述
然后我们使用 > 符号保存正确的输出到文件aaa.out中:
在这里插入图片描述
可以看到正错误输出被展示出来,正确输出储存到aaa.out中。

使用 2> 保存错误输出到aaa.err中:
在这里插入图片描述可以看到正确输出被展示出来,错误输出储存到aaa.err中。

使用 &> 符号将正确和错误储存到aaa.out中:
在这里插入图片描述
可以发现这次的输出覆盖了之前保存的内容,如何使保存的内容可以呢?我们可以使用追加符号来追加保存的输出内容

>>追加正确输出
2>>追加错误输出
&>>追加全部输出

例: >> 追加正确输出符号的使用方法展示如图
在这里插入图片描述
ps:以上实验环境皆为普通用户中进行

重新定向输入“<”“<<”

符号<,表示输入,
例:创建文件aaa,在其中写入随机内容
使用tr ‘a-z’ ‘A-Z’ < aaa ,更改aaa文件内全部小写字符为大写:
在这里插入图片描述

符号<< , 可用作多行录入我们在aaa中写入两行命令:date、passwd ,用bash aaa来执行,可以发现passwd命令弹出需要我们来再次手动输入密码来完成操作:
在这里插入图片描述

下来我们使用<<来实行多行录入:
在这里插入图片描述
ps: EOF是一个行业规范符号,表示输入的起始和结束。

管道符说明

“ | ” 叠加两个命令
例:针对 /proc 目录同时使用ls 和 cat -l 统计 /proc 中文件数
在这里插入图片描述
结合>输出符使用:
在这里插入图片描述
发现管道 | 会过滤错误结果,统计正确结果,如何使所有结果统计呢,使用 2>&1 ,把2中错的结果放到1中一起统计:
在这里插入图片描述
还有就是我们可以统计结果并把结果再保存出来:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Howei__

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值