RHEL三(输入输出重定向、管道符)

输出信息包括正确信息和错误信息。标准的输出设备:显示器,标准输入设备:键盘,扫描仪等。

使用命令 ll /dev/std*可以查看输入输出设备:

  lrwxrwxrwx. 1 root root 15 Jul 23 10:48 /dev/stderr -> /proc/self/fd/2
lrwxrwxrwx. 1 root root 15 Jul 23 10:48 /dev/stdin -> /proc/self/fd/0
lrwxrwxrwx. 1 root root 15 Jul 23 10:48 /dev/stdout -> /proc/self/fd/1
  

数字0代表标准的输入(设备),1代表了标准的正确输出(设备),2就代表了标准的错误输出(设备)


输出重定向:

命令  >  文件:把正确的输出覆盖到指定文件中,如:ls > a.txt,正确输出后加空格再跟文件

命令  >>  文件:把正确的输出追加到指定文件中,如:ls >> a.txt,正确输出后加空格再跟文件

命令  2>文件:把错误的输出覆盖到指定文件中,如:xxxbcvfda678 2>a.txt,错误输出紧跟文件,没有空格

命令  2>>文件:把错误的输出追加到指定文件中,如:xxxbcvfda678 2>>a.txt,错误输出紧跟文件,没有空格

命令 > 文件1 2>文件2把正确的输出覆盖到文件1中,把错误的输出覆盖到文件2中错误输出紧跟文件,没有空格

命令 &>文件把正确或者错误的输出都覆盖到文件中。错误输出紧跟文件,没有空格

命令  >  文件  2>&1把正确或者错误的输出都覆盖到文件中

命令  &>>文件:把正确或者错误的输出都追加到文件2中。错误输出紧跟文件,没有空格

命令  >>  文件   2>&1:把正确或者错误的输出都追加到文件2中

命令  >>  文件1  2>>文件2:把正确的输出追加到文件1中,把错误的输出追加到文件2中错误输出紧跟文件,没有空格


输出重定向:

命令 < 文件:把文件作为命令的输入

命令 << 标识符:把标识符之间的内容作为文件的输入:

如: wc EOF 4416 fdafdasf hello fdlafjl EOF

wc [-选项] [文件名]

选项:

-c 统计字符数

-w 统计单词数

-l 统计行数

例如:wc

dsafads

hello

world

abc

输完按ctrl+d,就会统计输入了多少行,多少个单词,多少个字符


输入输出在脚本程序中使用特别广泛!

管道符:

格式:命令 | 命令2: 把命令1的输出作为命令2的操作对象

如:ls -l | more  :  把ls -l的输出结果分屏显示,使用enter查看下一页

不是所有的命令都支持管道的输入,xargs可以让不支持管道的命令间接的去支持,xargs命令将参数列表转换成段传递给其他命令

如:ls | xargs -t rm -rf   这样就将ls列出来的结果用rm命令删除了

发布了30 篇原创文章 · 获赞 2 · 访问量 1万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章