系统中输入输出的管理

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

1.理解系统的输入输出

编号通道名称描述默认连接 用法
0stdin标准输入键盘仅读取
1stdout标准输出显示屏仅写入
2stderr标准错误显示屏仅写入

2.管理输入输出的符号
####输入重定向####
       指在文件中保存某些输入和指令,当需要执行文件中的这些指令时,不需要每次输入这些指令,只需执行包含这些命令的文件即可,这些命令会自然执行
    command < file        ##将输入重定向到file
    command << EOF
    haha
    xixi
    EOF            ##将两个EOF之间的内容(haha,xixi)作为输入传递给command
注意:结尾的EOF一定要顶格写,前面不能有任何字符,后面也不能有任何字符,包括空格和Tab缩进
     开始的EOF前后的空格会被忽略掉

示例:用输入重定向执行date、cal、passwd命令

先建立一个file.sh文件,写入以下内容:

结果如下:

####输出重定向####

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

注意:重定向会覆盖源文件内容

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


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


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


    > file        ##清空file

注意:如果希望执行某个命令,但是不希望在屏幕上显示输出结果,那么可以将输出重定向到/dev/null
    command > /dev/null
    /dev/null 是一个特殊的文件,写入到它的内容都会被丢弃;如果尝试从该文件中读取内容,那么什么也读不到。将命令的输出重定向到它,会起到“禁止输出”的效果。

3.输出的追加

   >>    ##追加正确输出到文件最后

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


    2>>    ##追加错误输出到文件最后

示例:find /etc/ -name passwd 2>> file    ##追加错误输出到file


    &>>    ##追加所有输出到文件最后

 示例:find /etc/ -name passwd &>> file    ##追加所有输出到file


注意:追加不会覆盖原内容

4.管道的应用

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    ##保存一份文件到file中再统计行数

注意:tee复制输出到指定位置

    补充:

              wc命令:
                         -c    ##输出比特数
                         -m    ##输出字符数
                         -l    ##输出行数
                         -L    ##输出最长行的长度
                         -w    ##输出单词数
   

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值