RHCE技术培训-标准IO和管道技术介绍_第1页
RHCE技术培训-标准IO和管道技术介绍_第2页
RHCE技术培训-标准IO和管道技术介绍_第3页
RHCE技术培训-标准IO和管道技术介绍_第4页
RHCE技术培训-标准IO和管道技术介绍_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、RedHat RHCE 操作系统技术培训资料标准 I/O 和管道技术介绍单元7标准 I/O 和管道目标标准输入和输出把输出重新导向到文件把输出重新导向到文件把 STDOUT 重导向给程序(管道输入)把 STDOUT 重导向给程序组合输出和错误重导向到多个目标(tee)从文件中导入 STDIN把多行发送给 STDIN脚本:for 循环脚本:for 循环结束 单元 7目标学习了本单元后,你应该能够: 把I/O频道重导向入文件 使用管道连接命令 使用 for 循环来逐项处理一组数值标准输入和输出 Linux 给程序提供三种 I/O 频道 标准输入(STDIN)- 默认接受来自键盘的输入 标准输出(S

2、TDOUT)- 默认输出到终端窗口 标准错误(STDERR)- 默认输出到终端窗口把输出重新导向到文件 STDOUT 和 STDERR 可以被重导向到文件: 命令 操作符号 文件名 支持的操作符号包括: 把STDOUT 重导向到文件 2 把STDERR重导向到文件 & 把所有输出重导向到文件 文件内容被默认覆盖把输出重新导向到文件例子 当使用非根用户身份运行时,该命令会同时生出输出和错误: $ find /etc name passwd 可以使用操作符号来保存输出和错误 $ find /etc name passwd find.out $ find /etc name passwd 2 /de

3、v/null $ find /etc name passwd find.out 2 find.err把 STDOUT 重导向给程序(管道输入) 管道(|符号)可以用来连接命令: 命令1 | 命令2 把命令1 的 STDOUT 发送给命令2 的 STDIN STDERR 不能通过管道转发 用来组合多种工具的功能 命令1 | 命令2 | 命令3等等把 STDOUT 重导向给程序例子 less:一页一页地查看输入: $ ls l /etc | less 输入可以使用 / 来搜索 mail:通过电子邮件发送输入: $ echo “test email” | mail s “test” user lpr

4、:把输入发送给打印机 $ echo “test print” | lpr $ echo “test print” | lpr P printer_name组合输出和错误 某些操作符号使 STDOUT 和 STDERR 都受影响 & : 重导向所有输出: $ find /etc name passwd & find.all 2&1: 把 STDERR 重导向给 STDOUT 要通过管道来发送所有输出时有用 $ find /etc name passwd 2&1 | less ():合并多个程序的 STDOUT $ ( cal 2007 ; cal 2008 ) | less重导向到多个目标(te

5、e) $ 命令1 | tee 文件名 | 命令2 把命令1 的 STDOUT 保存在文件名中,然后管道输入给命令2 使用 复杂管道的故障排除 同时查看和记录输出从文件中导入 STDIN 使用 来重导向标准输入 某些命令能够接受从文件中导入的 STDIN: $ tr A-Z a-z .bash_profile 该命令会把 .bash_profile 中的大写字符都转换成小写字符 相当于: $ cat .bash_profile | tr A-Z a-z把多行发送给 STDIN 使用 终止单词 命令从键盘把多行重导向给 STDIN 直到 终止单词 为止的所有文本都被发送给 STDIN 有时被称为就

6、地文本(heretext) $ mail s “Please Call” jane Hi Jane, Please give me a call when you get in . We may need to do some maintennce on server1. Details when youre on-site, Boris END脚本:for 循环 对一组值中的每个成员执行行动 例如: for NAME in joe jane julie do ADDRESS=$NAME MESSAGE=Projects are du today! echo $MESSAGE | mail s Reminder $ADDRESS done脚本 :for 循环 也可以使用命令输出和文件列表 for num in $(seq 1 10) 把从 1 到 10 的数字分配给变量 $num seq X Y 会显示 X 到 Y 之间的数字 for file in *.txt 把通配文本文件的文件名分配给变量$file结束 单元 7 答疑 总结 标准 I/O 频

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论