一、数据流定向就是将某个命令执行后应该出现在屏幕上的数据传输到其他地方。
Example:
用>可以将ls输出的结果写入list.log中,如果没有list.log文件会自动建立list.log,如果文件存在直接覆盖原有的内容,结果如图
>和>>的区别为>为直接覆盖,>>为可以在原有的基础上增加。
同时对于标准的错误输出,可以在>好之前用数字2将错误的输出,定向到固定文件中,如:
标准的输出语句,那么标准的输入:
以上是数据流重定向的应用。
下面来叙述管道:
管道就是将一个命令的标准输出信息,通过“|”传递给另外一个命令进行处理。
例如:
他们的区别:1.数据流重定向指的是
左边的命令应该有标准输出
>
右边只能是文件
左边的命令应该需要标准输入 <右边只能是文件。
2.管道触发两个子进程执行"|"两边的程序;而重定向是在一个进程内执行