linux重定向命令应用及语法

来源:互联网 发布:算法英语怎么说 编辑:程序博客网 时间:2024/05/17 05:12

1. 标准输入的控制
语法:命令< 文件将文件做为命令的输入。
例如:
mail -s “mail test” das@163.com < file1 将文件file1 当做信件的内容,主
题名称为mail test,送给收信人。

2. 标准输出的控制
语法:命令> 文件将命令的执行结果送至指定的文件中。
例如:
ls -l > list 将执行“ls -l” 命令的结果写入文件list 中。
语法:命令>! 文件将命令的执行结果送至指定的文件中,若文件已经存在,则覆盖。
例如:
ls -lg >! list 将执行“ls - lg” 命令的结果覆盖写入文件list 中。
语法:命令>& 文件将命令执行时屏幕上所产生的任何信息写入指定的文件中。
例如:
cc file1.c >& error 将编译file1.c 文件时所产生的任何信息写入文件error 中。
语法:命令>> 文件将命令执行的结果附加到指定的文件中。
例如:
ls - lag >> list 将执行“ls - lag” 命令的结果附加到文件list 中。
语法:命令>>& 文件将命令执行时屏幕上所产生的任何信息附加到指定的文件中。
例如:
cc file2.c >>& error 将编译file2.c 文件时屏幕所产生的任何信息附加到文件error 中。

3. 命令语法
command > filename                              把标准输出重定向到一个新文件中
command >> filename                            把标准输出重定向到一个文件中(追加)
command 1 > fielname                           把标准输出重定向到一个文件中
command > filename 2>&1                     把标准输出和标准错误一起重定向到一个文件中
command 2 > filename                           把标准错误重定向到一个文件中
command 2 >> filename                         把标准输出重定向到一个文件中(追加)
command >> filename 2>&1                  把标准输出和标准错误一起重定向到一个文件中(追加)
command < filename >filename2           把command命令以filename文件作为标准输入,以filename2文件作为标准输出
command < filename                              把command命令以filename文件作为标准输入
command << delimiter                           把从标准输入中读入,直至遇到delimiter分界符
command <&m                                       把文件描述符m作为标准输入
command >&m                                       把标准输出重定向到文件描述符m中
command <&-                                        把关闭标准输入