对Linux系统中输入输出的管理介绍

########################
##### 系统的输入输出 #####
########################

 

##系统中输入输出的管理

 

1.首先在linux系统中,通常我们定义为正确输出的编号为1,错误输出编号为2。

2.管理输入输出的符号


##输出重定向
>                                  ##重定向正确输出
2>                                ##重定向错误输出
&>                               ##重定向所有输出
值得注意的是:
                           重定向会覆盖原文件内容

为了更形象的说明重定向的含义,以下为所举的示例:(特别注意:下面操作需转换成student普通用户来完成)

find /etc/  -name  passwd  >        file                  ##定向正确输出到file


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

注:不难看出重定向到file里面的内容会被覆盖掉。


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


> file                                                                       ##清空file

 

##输出追加重定向
>>                                   ##追加正确输出到文件最后
2>>                                 ##追加错误输出到文件最后
&>>                                ##追加所有输出到文件最后

值得注意的是:
                      追加不会覆盖源文件内容。

同样我们来做一个实验:

find  /etc/   -name   passwd   >>     file                 ##追加正确输出到file


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

由以上可见追加输出不会覆盖原文件的内容


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

 

##3.管道的应用


1.管道的作用
   符号为                             “ | ”

   管道的作用是把前一条命令的输出变成后一条命令的输入

必须注意的是:
   
管道只允许正确输出通过
    通过管道的输入将会变成输入,而变成输入的这些输出是会被第二条命令处理的
    如果需要保存输出内容,那么需要复制一份输出,用到的命令是“tee”

此实验在普通用户下操作:
    find    /etc/   -name   passwd | wc -l                            ##会看到的结果为2,因为错误输出不能通过管道


    find    /etc    -name    passwd 2>&1 | wc -l                  ##会看到19,因为编号为2的输出被“2>&1”转换为编号1


    find    /etc    -name    passwd 2>&1 | tee file | wc -l    ##看到的结果仍为19,且保存一份输出到file再统计行数

##4.输入重定向####


echo hello world > file                              ##将输入的内容定向在file里

cat > file <<EOF                                          ##将file文件里的内容隔行显示                   
hello
world
EOF

 

 

######################

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值