Linux文件的输入+输出管理

1.理解什么是输入输出定义

输入:通过硬件(打字机,鼠标,键盘)在系统中录入字符,我们称之为输入
   stdin(标准输入)标号为0
输出:系统接收字符经过运算处理输出给其他设备

输出分为:标准正确输出(标号为1)
     标准错误输出(标号为2)
  
注意:在普通用户下查看时显示(root用户下不会显示错误输出)  
Linux文件的输入+输出管理

2.如何管理输入

定义:外界传递到程序中的信息

1. < 输入重定向

Linux文件的输入+输出管理
tr ‘a-z’ ‘A-Z’ < 文件名     表示将文件中小写的字符全部改为大写

Linux文件的输入+输出管理

tr ‘A-Z’ ‘a-z’ < 文件名     表示将文件中大写的字符全部改为小写

Linux文件的输入+输出管理注:这些设置都不会对文件内容进行更改

  1. << 多行录入

tr ‘a-z’ ‘A-Z’ <<EOF         表示将输入的字符全部变为大写
>                 
>
EOF               当首字母再次出现表示录入结束

Linux文件的输入+输出管理

2.管理系统的输出

1) 输出重定向

重定向正确输出
2> 重定向错误输出
&> 输出全部输出

find /etc/ -name passwd > 文件名称 (在普通用户下进行操作)
将正确输出存放在指定的文件中
Linux文件的输入+输出管理
find /etc/ -name passwd 2> 文件名称
将错误输出存放在指定的文件中
Linux文件的输入+输出管理

find /etc/ -name passwd &> 文件名称
将所有输出存放在指定的文件中

Linux文件的输入+输出管理
注意:重定向内容会被覆盖

2.追加

>>
2>>
&>>
  1. >>
    find /etc/ -name passwd >>文件名称
    追加正确输出到指定文件(不会覆盖原文件内容)

Linux文件的输入+输出管理

  1. 2>>
    find /etc/ -name passwd 2>>文件名称
    追加错误输出到指定文件(不会覆盖原文件内容)

Linux文件的输入+输出管理

  1. &>>
    find /etc/ -name passwd &>>文件名称
    追加全部输出到指定文件(不会覆盖原文件内容)
    Linux文件的输入+输出管理
    注意:追加不会覆盖原文件中的内容

3.管道符 “|”

把前一条命令的输出变成输入传递到下一条命令进行操作

***注意:
*管道只处理正确输出

Linux文件的输入+输出管理

*2>&1把编号为2的输入转换到编号为1的输出中

Linux文件的输入+输出管理

*tee 复制输出到指定位置

Linux文件的输入+输出管理

管道在一条命令中可以使用多次**