Bash-输入输出重定向

发布时间 2023-09-12 13:45:25作者: SiNanhong

一.标准输入输出

 

二.输出重定向

正常输出是直接在屏幕上打印,若想将内容输出到文件,改变输出方向,则称为输出重定向

标准输出重定向

  • 命令 > 文件  (覆盖的方式,把命令的正确输出,输出到指定文件或设备中)
  • 命令 >> 文件  (追加的方式,把命令的正确输出,输出到指定文件或设备中)

标准错误输出重定向

  • 错误命令 2> 文件  (覆盖的方式,把命令的错误输出,输出到指定文件或设备中)
  • 错误命令 2>> 文件  (追加的方式,把命令的错误输出,输出到指定文件或设备中)

 

 同时保存正确与错误的输出

  • 命令 > 文件 2>&1  (覆盖的方式,把正确与错误的输出都保存到同个文件里)
  • 命令 >> 文件 2>&1  (追加的方式,把正确与错误的输出都保存到同个文件里)
  • 命令 &>文件  (覆盖的方式,把正确与错误的输出都保存到同个文件里)
  • 命令 &>>文件  (追加的方式,把正确与错误的输出都保存到同个文件里)
  • 命令 >> 文件1 2>>文件2  (把正确与错误的输出分开保存)

PS: shell脚本时候,有些命令行输出不需要显示,可以直接丢掉,可使用以下指令:ls &>/dev/null

 

三.输入重定向

正常输入是直接在屏幕上输入,若不是通过键盘输入,比如用文件作为输入,则称为输入重定向

实际用得很少,可以不了解(<,<<),输出重定向多

wc 【选项】【文件名】

选项:

  • -c:统计字节数
  • -w:统计单词数
  • -l:统计行数