[Shell]Bash基本功能:输入输出重定向
输入输出重定向的作用:
输出重定向就是把命令的执行结果保存到文件,便于查看。
输入重定向就是把原先由键盘的输入改为由文件输入。
先了解一下标准输入输出:
[ 设备 ][ 设备文件名 ][ 文件描述符 ][ 类型 ]
键盘 /dev/stdin 0 标准输入
显示器 /dev/stdout 1 标准输出
显示器 /dev/stderr 2 标准错误输出
几个概念(> 表示覆盖,>>表示追加)
[ 正确输出重定向 ]
命令 > 文件 # 以覆盖的方式,将命令的正确输出,输出到文件或设备中
命令 >> 文件 # 以追加的方式,将命令的正确输出,输出到文件或设备中
[ 错误输出重定向 ]
错误命令 2> 文件 # 以覆盖方式,将命令的错误输出,输出到指定文件或设备中
错误命令 2>> 文件 # 以追加的方式,将命令的错误输出,输出到指定文件或设备中
(注意:要保存错误信息,必须在单大于号或双大于号前加 2 ,中间无空格)
[ 正确输出和错误输出同时保存]
1. 命令 > 文件 2>&1 #以覆盖方式,将正确和错误输出都保存到同一文件中
2. 命令 >> 文件 2>&1 #以追加的方式,将正确和错误输出都保存到同一文件中
3. 命令 &> 文件 #等同于第一条(&作用等同于2>&1)
4. 命令 &>> 文件 #等同于第二条
5. 命令 >> 文件A 2>> 文件B #把正确的输出追加到文件A,把错误的输出追加到文件2中(定时备份的时候很有用)
ls &> /dev/null #将执行结果保存到/dev/null(不存在的设备,即将无意义的结果清除)
输入重定向:
[ wc用于统计键盘输入 ]
wc [-c] 文件名 #统计字节数
wc [-w] 文件名 #统计单词数
wc [-l] 文件名 #统计行数
(输入wc后,输入的其它字符将被统计,ctrl+d结束)
(4行,7个单词,40个字符)
[ 用wc统计文件:单小于号 ]
Refer:什么是Bash