Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1074322
  • 博文数量: 242
  • 博客积分: 10209
  • 博客等级: 上将
  • 技术积分: 3028
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-12 09:27
文章分类

全部博文(242)

文章存档

2014年(1)

2013年(1)

2010年(51)

2009年(65)

2008年(124)

我的朋友

分类:

2008-04-14 14:47:23

linux重定向命令应用及语法

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

2. 标准输出的控制
语法:命令> 文件将命令的执行结果送至指定的文件中。
例如:
ls -l > list 将执行“ls -l” 命令的结果写入文件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 <&- 把关闭标准输入

j<>filename 
表示把文件打开,并指明文件标识符为 j
"&-"
表示关闭文件标识符


n<&- 关闭输入文件标识符
n 0<&-或<&- 关闭标准输入
stdin n>&- 关闭输出文件标识符
n 1>&-或>&-关闭标准输出 stdout


#exec 3<>filename
把文件filename 打开,并指定文件标识符为3
#read -n 4 <&3
从文件中读4个字符,句柄已经指到第四个字符末尾
#echo -n . >&3
在第5个字符处写一个点,覆盖第5个字符,-n表示不换行
#exec 3>&-
关闭文件标识符

:> filename 或者 > filename
表示把文件filename设置成空,也就是清空文件内容,如果文件不存在,则创建一个空文件
阅读(1128) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~