feisky

云计算、虚拟化与Linux技术笔记
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

linux Shell重定向

Posted on 2011-03-22 17:28  feisky  阅读(931)  评论(0编辑  收藏  举报


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] <file或文件描述符&设备

[Unix@17:20:59 ~]$cat>a<a.txt
[Unix
@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

无觅相关文章插件,快速提升流量