输入,输出重定向和管道

bash shell提供了一些特殊的操作符来将某个命令的输出重定向到另一个位置。

输出重定向

大于号(>)会将命令的结果以新建或覆盖的方式重定向到一个文件中。

双大于号(>>)会将命令的结果以追加的方式重定向到一个文件中

输入重定向

小于号(<)会将文件的数据重定向到命令

qaperf@hzbxs-perftest13:~/linsa$ wc < dd.txt 
 5  5 24

双小于号(<<)称为内联输入重定向,它的含义是允许你在命令行而不是在文件中指定输入重定向的数据

qaperf@hzbxs-perftest13:~/linsa$ wc << endflag
> test string 1
> test string 2
> endflag
 2  6 28

如上图,<<指定wc命令的输入数据为下面的

test string 1

test string 2

其中endflag是自定义约定好的输入结束标志

管道

管道(|)可以将一个命令的输出作为另一个命令的输入

linux系统会同时运行管道两边的命令,在系统内部将他们连接起来,在一个命令产生输出的同时,输出会被立即送往第二个命令,传输数据不会使用任何中间文件或缓冲区区域

在ls查看文件列表时,常用管道|分页命令more来分屏显示内容,以防止输出数据在屏幕上一闪而过

原文地址:https://www.cnblogs.com/boucher/p/5761026.html