Linux

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > Linux > Linux命令输入输出重定向、追加

Linux命令如何输入输出重定向、追加

作者:IT利刃出鞘

Linux中的输入输出重定向和追加是通过文件描述符来控制的,常用的重定向符号包括<、<<、>、>>、2>、2>>和>&,这些符号可以用于覆盖或追加输出到文件,也可以用于合并标准输出和错误输出

简介

本文介绍Linux中的输入输出重定向、追加。

Linux是通过文件描述符来控制输入和输出的,如下:

字段描述文件描述符默认设备
stdin标准输入流0终端(键盘)
stdout标准输出流1终端(显示屏)
stderr标准错误输出流2终端(显示屏)

重定向符号

重定向符号

含义

使用方法

解释

<

输入重定向

command1 < file

command命令操作内容会从file文件中读取,替代了键盘输入

<<

输入重定向,多行录入

command1 << flag

将开始标记flag和结束标记flag之间的内容作为输入

>

输出重定向,覆盖式

command > file

将输出重定向到file

>>

输出重定向,追加式

command >> file

将输出以追加的方式重定向到file

2>

错误输出重定向,覆盖式

command 2> file

将错误输出重定向到file

2>

错误输出重定向,追加式

command 2> file

将错误输出以追加的方式重定向到file

&>

输出与错误输出重定向,覆盖式

command &> file

输出与错误输出重定向到file

&>>

输出与错误输出重定向,追加式

command &>> file

输出与错误输出以追加的方式重定向到file

&合并command > file 2>&1将标准输出写到file,标准错误也写到file。

输入重定向

<

目标

命令

tr 'a-z' 'A-Z' < file1

执行结果

<<

例1:展示在屏幕上

目标

命令

tr 'a-z' 'A-Z' <<EOF

执行结果

例2:转换后输出到文件

输出重定向

>

>会覆盖原文件内容。

示例

1.将正常输出写入文件

./test.sh >log.txt

等价于

./test.sh 1>log.txt

2. 将错误输出写入文件

./test.sh 2>log.txt

3.将所有输出(正常和错误输出)都写入文件

./test.sh &>log.txt

>>

>>会追加到原文件的最后。

1.将正常输出写入文件

./test.sh >>log.txt

等价于

./test.sh 1>>log.txt

2. 将错误输出写入文件

./test.sh 2>>log.txt

3.将所有输出(正常和错误输出)都写入文件

./test.sh &>>log.txt

cmd >/dev/null 2>&1

详解

cmd >> file 2>&1

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文