Linux的重定向

Linux中的重定向是将程序的输入流或输出流从默认的位置改变到指定的位置。可以使用特殊的符号来实现重定向操作。(文中command代表命令)

(1)重定向命令列表

命令                                  说明
command > file              将输出重定向到 file
command < file              将输入重定向到 file
command >> file             将输出以追加的方式重定向到 file
n > file                             将文件描述符为 n 的文件重定向到 file
n >> file                            将文件描述符为 n 的文件以追加的方式重定向到 file
n >& m                            将输出文件 m 和 n 合并
n <& m                             将输入文件 m 和 n 合并
<< tag                            将开始标记 tag 和结束标记 tag 之间的内容作为输入


(2)文件描述符


0:通常是标准输入(STDIN)
1:是标准输出(STDOUT)
2:是标准错误输出(STDERR)

输出重定向:

       符号 > 将程序的标准输出重定向到指定位置,会覆盖原有内容。 例如,将程序的输出写入到一个文件中:

[root@localhost test]# command > file

Linux的重定向_第1张图片

符号 >> 将程序的标准输出追加到指定位置,不会覆盖原有内容。 例如,将程序的输出追加到一个文件中:

[root@localhost test]# command >> file

Linux的重定向_第2张图片

 符号 2>  代表将程序的标准错误输出重定向到指定位置。 例如,将程序的错误输出写入到一个文件中:

[root@localhost test]# command 2>file

Linux的重定向_第3张图片

 符号  2>> :将程序的标准错误输出追加到指定位置。 例如,将程序的错误输出追加到一个文件中:

[root@localhost test]# command 2>> file

Linux的重定向_第4张图片

& :将程序的标准输出和标准错误输出合并并重定向到指定位置。 例如,将程序的输出和错误输出合并并写入到一个文件中:

[root@localhost test]# command >& file

重定向输入

命令符号格式 作用
命令 < 文件 将指定文件作为命令的输入设备
命令 << 分界符 表示从标准输入设备(键盘)中读入,直到遇到分界符才停止(读入的数据不包括分界符),这里的分界符其实就是自定义的字符串
命令 < 文件 1 > 文件 2  文件 1 作为命令的输入设备,该命令的执行结果输出到文件 2 中。
 

 

        符号 <  将指定文件作为程序的标准输入。 例如,将一个文件作为程序的输入:

[root@localhost test]# command < file

从标准输入设备(键盘)中读入,直到遇到分界符才停止(读入的数据不包括分界符)

[root@localhost test]# echo "66"<< *

Linux的重定向_第5张图片

这些只是一些常见的重定向操作,实际上还有其他更多的重定向符号和用法,可以根据具体需求进行使用。

你可能感兴趣的:(linux,java,linux)