🍖Linux输出重定向

一.标准输入类型

  • 输出即把相关对象通过输出设备(显示器等)显示出来

  • linux中用0代表标准输入,1代表标准正确输出,2代表标准错误输出

类型 设备 设备文件名 文件描述符
标准输入 键盘 /dev/stdin 0
标准输出 显示器 /dev/stdout 1
标准错误输出 显示器 /dev/stderr 2

二.输出重定向

  • 正常输出是把内容输出到显示器上,而输出重定向是把内容输出到文件

1.标准输出重定向

语法 : 例子 作用
[命令] > [文件] : ls > a.txt 覆盖的方式, 将命令的正确输出结果指定到文件或设备中
[命令] >> [文件] : ls >> a.txt 追加的方式, 将命令的正确输出结果指定到文件或设备中

2.标准错误输出重定向

语法 : 例子 作用
[错误命令] 2> [文件] : lss 2> a.txt 覆盖的方式, 将命令的错误输出结果指定到文件或设备中
[错误命令] 2>> [文件] : lss 2> a.txt 追加的方式, 将命令的错误输出结果指定到文件或设备中

3.正确输出和错误输出同时保存

  • 第一种语法
语法 作用
[命令] &> [文件] 覆盖的方式, 将命令正确和错误输出结果指定到文件中
[命令] &>> [文件] 追加的方式, 将命令正确和错误输出结果指定到文件中
  • 第二种语法
语法 作用
[命令] > [文件] 2>&1 覆盖的方式, 将命令正确和错误输出结果指定到文件中
[命令] >> [文件] 2>&1 追加的方式, 将命令正确和错误输出结果指定到文件中
  • 将结果写入两个不同的文件
语法 作用
[命令] > [文件1] 2>[文件2] 正确输出覆盖文件1, 将错误输出覆盖文件2
[命令] >> [文件1] 2>>[文件2] 正确输出追加文件1, 将错误输出追加文件2

三.应用示例

1.标准输出重定向

  • 查看a.txt的内容放入b.txt

2.标准错误输出重定向

  • 将错误命令运行的错误输出放入到a.txt

3.正确和错误输出放入同一文件: 方法一

  • 语法: [命令] &> [文件] / [命令] &>> [文件]
  • 查看两个文件,a.txt存在, xxx不存在, 将输出都放入b.txt

4.正确和错误输出放入同一文件: 方法二

  • 语法: [命令] > [文件] 2>&1 / [命令] >> [文件] 2>>&1

  • 查看两个文件,a.txt存在, ooo不存在, 将输出都放入b.txt

5.将正确和错误输出分别放入两个不同的文件

  • 查看存在的 a.txt 和不存在的 GGG , 正确输出放入 c.txt, 错误输出放入 d.txt

原文地址:https://www.cnblogs.com/songhaixing/p/13876059.html