linux Shell重定向

Linux文件描述符:默认打开三个文件描述符:标准输入standard input 0,正确输出standard output 1,错误输出:error output 2

输出重定向


command-line1 [1-n] > file或文件操作符或设备


首先是判断>右边的文件是否存在,存在的话就首先删除然后再创建,无论左边命令执行是否成功,右边文件都会变为空。使用>>为文件的追加方式。

 
   
[Unix@ 17 : 18 : 57 ~ ]$ls > a.txt [Unix@ 17 : 19 : 11 ~ ]$cat a.txt a.txt cpp ctest Makefile network shell socket test thread


输入重定向


command-line [n]

 
   
[Unix @ 17 : 20 : 59 ~] $cat > a @ 17 : 21 : 36 ~] $cat a a.txt cpp ctest Makefile network shell socket test thread


exec绑定重定向


exec 文件描述符[n] <或> file或文件描述符或设备


在上面讲的输入,输出重定向 将输入,输出绑定文件或设备后,只对当前那条指令是有效的。如果需要在绑定之后,接下来的所有命令都支持的话,就需要用exec命令。

 
   
[Unix @ 17 : 26 : 02 ~] $exec 1 > a.txt [Unix @ 17 : 26 : 11 ~] $ls - al [Unix @ 17 : 26 : 16 ~] $exec 1 >/ dev / tty # 恢复标准输出 [Unix @ 17 : 26 : 25 ~] $ls a.txt cpp ctest Makefile network shell socket test thread

你可能感兴趣的:(linux Shell重定向)