linux系统中输入输出管理

linux系统中输入输出管理

一、理解系统的输入输出

二、如何定向输出

三、如何追加输出

四、linux下管道的应用(|)

五、linux中的输入重定向


一、理解系统的输入输出

在shell程序中输入指令,送到cpu中运算产生结果 ,在送到字符设备中显示。通俗的讲输入就是我们使用键盘敲击的命令,输出为命令执行时系统所给的反馈。在做输入输出实验时通常切换到普通用户(student用户),不能使用超级用户,因为超级用户在运行指令时很少出现报错(gnome-session-quit --force关闭图形退出)。

文件描述符

缩写

描述

0STDIN标准输入
1STDOUT标准输出
2STDERR标准错误输出

二、如何定向输出

输出重定向
>               ##重定向正确输出
2>            ##重定向错误输出
&>            ##重定向所有输出
注意: 重定向会覆盖源文件内容
注意:以下实验必须在student用户下完成

find /etc/ -name passwd         在etc中搜索passwd显示输出正确输出和错误输出


find /etc/ -name passwd > westos        ##定向正确输入到westos.out

find /etc/ -name passwd 2> file.err    ##定向错误输出到file


find /etc/ -name passwd &> file.all    ##定向所有输出到file

三、如何追加输出

> 2> 和&>均会覆盖文件,如果不想覆盖文件就必须使用追加

>>           追加正确输出

2>>          追加错误输出

&>>          追加所有的输出

cat westos.err >> westos.out

echo haha > file1

find /etc/ -name passwd file1

四、linux下管道的应用(|)

管道的作用是把一个程序的输出直接连接到另一个程序的输入。 管道符号只允许正确的输出通过,即只允许编号位为1的通过。通过管道的输入将会变成输入,而变成输入的这些输出时会被第二条命令处理的,如果需要保存输出内容,那么需要复制一份输出,用到的命令时tee。

先介绍wc指令

wc -m file 字符数

wc -c file 字节数(文件大小)

wc -l  file 行数

wc -w 字数

管道将前者的输出作为后者的输入

ls | wc -w

find 查找名称查找文件的基本查找命令

find /etc/ -name passwd | wc -l    显示etc下名字为passwd的正确输出的行数

find /etc/ -name passwd 2>&1|wc -l (2>&1将输出为2的错误输出转换为1的正确输出)

显示etc下名字为passwd的所有输出的行数

tee file1 file2 #在两个文件中复制内容,tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。

find /etc/ -name passwd 2>&1 | tee file |wc -l  

五、linux中的输入重定向

tr 'a-z' 'A-Z' <westos   #将文件中的a-z小写转换为大写A-Z (<单次)

(<<多次)westos.sh 内容:

"date

cal

passwd << EOF

haha

haha

EOF"

sh westos.sh

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值