经管营销RHCE管道

上传人:沧海****B 文档编号:252382168 上传时间:2024-11-15 格式:PPTX 页数:30 大小:483.50KB
返回 下载 相关 举报
经管营销RHCE管道_第1页
第1页 / 共30页
经管营销RHCE管道_第2页
第2页 / 共30页
经管营销RHCE管道_第3页
第3页 / 共30页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,2019/2/3,#,7,-,1,目标,学习了本单元后,大家应该能够:,把,I/O,频道重导向入文件,使用管道连接命令,使用,for,循环来逐项处理一组数值,标准管道的输入与输出,标准输入,stdin,默认接受来自键盘的输入,标准输出,stdout,默认输出到终端窗口,标准错误输出,stderr,默认输出到终端窗口,Stdin,文件描述码,0,Stdout,文件描述码,1,Stderr,文件描述码,2,首先查看,std,先关的设备文件,rootstation20 test#ls-l/dev/std*,lrwxrwxrwx.1 root root 15 Sep 24 2011/dev/stderr-/proc/self/fd/2,lrwxrwxrwx.1 root root 15 Sep 24 2011/dev/stdin-/proc/self/fd/0,lrwxrwxrwx.1 root root 15 Sep 24 2011/dev/stdout-/proc/self/fd/1,rootstation20 test#,下面是一个例子查看标准输出和标准错误输出,ls-la/etc/password/etc/passwd,上面输出的信息都显示在屏幕上,,实际上第一导向标准错误流和第二行导向标准输出,7,-,5,把输出重新导向到文件,STDOUT,和,STDERR,可以被重导向到文件:,命令 操作符号 文件名,支持的操作符号包括:,1,把,STDOUT,重导向到文件 (,1,),2,把,STDERR,重导向到文件,&,把所有(,标准输出和标准错误输出,)输出重导向到文件,文件内容被默认覆盖。,会后补。,常见的重定向操作符,命令,文件,-,把命令标准输出重定向文件,命令,文件,-,把命令标准输出追加到文件最后,命令,文件,-,把命令中错误的输出重定向到文件,命令,2,把命令的错误输出追加到文件最后,7,-,7,把输出重新导向到文件,例子,当使用非根用户身份运行时,该命令会同时生出输出和错误:,$,find/etc-namepasswd,可以使用操作符号来保存输出和错误:,$,find/etc-namepasswdfind.out,$,find/etc-namepasswd2/dev/null,$,find/etc-namepasswdfind.out2find.err,下一张幻灯片会显示结果,这个是标准输出流,只输出正确的结果,下面就是将错误消息导入到,/dev/null,(黑洞),只显示标准输出,下面就是将标准输出导出到,find.out,错误的导出到,find.err.,这个例子就是把文件作为输入发送给,cat,命令,#cat,:重导向所有输出:,$,find/etc-namepasswd&find.all,2&1,:把,STDERR,重导向给,STDOUT,要通过管道来发送所有输出时有用,$,find/etc-namepasswd2&1|less,(),:合并多个程序的,STDOUT,$,(cal2007;cal2008)|less,(现场演示),下面就是上面的例子运行结果截图,7,-,18,重导向到多个目标(,tee,),$,命令,1|tee,文件名,|,命令,2,把命令,1,的,STDOUT,保存在文件名中,然后管道输入给命令,2,使用:,复杂管道的故障排除,同时查看和记录输出,下面就是一个重定向到夺目标的例子,studentstation20$ls-lR/etc/|tee stage1.out|sort|tee stage2.out|uniq-c|tee stage3.out|sort-r|tee stage4.out,7,-,20,从文件中导入,STDIN,使用,来重导向标准输入,某些命令,能够接受从文件中导入的,STDIN,:,$,trA-Za-z.bash_profile,该命令会把,.bash_profile,中的大写字符都转换成小写字符,相当于:,$,cat.bash_profile|trA-Za-z,7,-,21,把多行发送给,STDIN,使用,终止单词,命令:从键盘把多行重导向给,STDIN,直到,终止单词,为止的所有文本都被发送给,STDIN,有时被称为就地文本(,heretext,),下面是我的测试例子,7,-,23,脚本:,for,循环,对一组值中的每个成员执行行动,例如:,运行结果如下,rootstation20 home#for NAME in boss bill oracle,do,ADDRESS=$NAME Message=projects are due today“,echo$Message|mail-s reminder$ADDRESS,done,You have new mail in/var/spool/mail/root,7,-,25,脚本:,for,循环,继续,也可以使用命令输出和文件列表:,for num in$(seq 1 10),把从,1,到,10,的数字分配给变量,$num,seq X Y,会显示,X,到,Y,之间的数字,for file in*.txt,把通配文本文件的文件名分配给变量,$file,7,-,27,结束 单元,7,答疑,总结,标准,I/O,频道,文件重导向,标准输入(,),标准错误(,2,),管道会把标准输出重导向到标准输入,for,循环可以对程序的标准输出中的项目或一个明确列表中的项目执行命令,实验例子(,5,6,),如果去掉括号的话就会出现如下结果,Date,会作为标准输出显示在屏幕,邮件中的内容开头就没有了时间,测试网络中计算机的网络连通性脚本,rootstation20 test#vim alive.sh,#!/bin/bash,for n in 1.20;do,hosts=192.168.25.$n,ping-c 2$hosts&/dev/null,if$?=0;then,echo$hosts is up,else,echo$hosts is down,fi,done,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸设计 > 开题报告


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!