Linux文件的输入+输出管理
1.理解什么是输入输出定义
输入:通过硬件(打字机,鼠标,键盘)在系统中录入字符,我们称之为输入
stdin(标准输入)标号为0
输出:系统接收字符经过运算处理输出给其他设备
输出分为:标准正确输出(标号为1)
标准错误输出(标号为2)
注意:在普通用户下查看时显示(root用户下不会显示错误输出)
2.如何管理输入
定义:外界传递到程序中的信息
1. < 输入重定向
tr ‘a-z’ ‘A-Z’ < 文件名 表示将文件中小写的字符全部改为大写
tr ‘A-Z’ ‘a-z’ < 文件名 表示将文件中大写的字符全部改为小写
注:这些设置都不会对文件内容进行更改
- << 多行录入
tr ‘a-z’ ‘A-Z’ <<EOF 表示将输入的字符全部变为大写
>
>
EOF 当首字母再次出现表示录入结束
2.管理系统的输出
1) 输出重定向
> | 重定向正确输出 |
---|---|
2> | 重定向错误输出 |
&> | 输出全部输出 |
find /etc/ -name passwd > 文件名称 (在普通用户下进行操作)
将正确输出存放在指定的文件中
find /etc/ -name passwd 2> 文件名称
将错误输出存放在指定的文件中
find /etc/ -name passwd &> 文件名称
将所有输出存放在指定的文件中
注意:重定向内容会被覆盖
2.追加
>> | |
---|---|
2>> | |
&>> |
- >>
find /etc/ -name passwd >>文件名称
追加正确输出到指定文件(不会覆盖原文件内容)
- 2>>
find /etc/ -name passwd 2>>文件名称
追加错误输出到指定文件(不会覆盖原文件内容)
- &>>
find /etc/ -name passwd &>>文件名称
追加全部输出到指定文件(不会覆盖原文件内容)
注意:追加不会覆盖原文件中的内容
3.管道符 “|”
把前一条命令的输出变成输入传递到下一条命令进行操作
***注意:
*管道只处理正确输出
*2>&1把编号为2的输入转换到编号为1的输出中
*tee 复制输出到指定位置
管道在一条命令中可以使用多次**