I / O重定向


:Mr.zhou  阅读: 1,727 次

redirection

  stdin 标准输入 (键盘)

  stdout 标准输出 (屏幕)

  stderr 标准错误输出 (屏幕)

  重定向,将命令、程序、脚本的输出结果,发送到另一个命令、程序、脚本,作为输入。

  标准输入(stdin)、标准输出(stdout)、标准错误输出(stderr)的文件描述符分别为:0、1、2

  COMMAND_OUTPUT >

  将标准输出重定向到一个文件中。若文件不存在则创建它,否则覆盖它。

[root@c1-oldboy Data]# tree -L 1 / > dir.list
[root@c1-oldboy Data]# cat dir.list 
/
├── application
├── bin
├── boot
├── dev
├── etc
├── home
├── lib
├── lib64
├── lost+found
├── media
├── mnt
├── opt
├── proc
├── root
├── sbin
├── selinux
├── srv
├── sys
├── tmp
├── usr
└── var

21 directories, 0 files
[root@c1-oldboy Data]# 

  : > filename

  将文件内容清空。若文件名不存在则创建该文件且文件内容为空。相当于 touch 命令。

[root@c1-oldboy Data]# : > dir.list 
[root@c1-oldboy Data]# cat dir.list 
[root@c1-oldboy Data]# 

   > filename

  同 : > 一样,清空文件。但在有些shell脚本本,此方式不能生效。

  COMMAND_OUTPUT >>

  将标准输出重定向到一个文件,若文件不存在则创建它,否则将标准输出追加到文件末尾。

[root@c1-oldboy Data]# cat dir.list 
Hello Linux!
[root@c1-oldboy Data]# cat /etc/redhat-release >> dir.list 
[root@c1-oldboy Data]# cat dir.list 
Hello Linux!
CentOS release 6.6 (Final)
[root@c1-oldboy Data]# 

 

  1 > filename 将标准输出重定向到文件。

  1 >> filename 将标准输出重定向并追加到文件中。

  2 > filename 将标准错误输出重定向到文件。

  2 >> filename 将标准错误输出重定向并追加到文件中。

  & > filename 将标准输出和标准错误输出重定向到文件。

 

  M > N    M 为文件描述符(0、1、2),默认为1。N 为文件名。

  M > &N    M 为文件描述符(0、1、2),默认为1。N 为另一个文件描述符。

 

  i > &j 将文件描述符i重定向到j。例,2 > &1 将标准错误输出重定向到标准输出。

  输出重定向实例:http://www.z-dig.com/output-redirection.html

   < FILENAME

  从文件接收输入。


转载请注明原文链接:http://www.z-dig.com/i-o-redirection.html



正文部分到此结束