10 IO重定向.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
10 IO重定向

10 I/O重定向 I/O重定向是Shell编程中用于捕捉一个文件、命令、程序或脚本,甚至代码块的输出,然后把捕捉到的输出作为输入发送给另外一个文件、命令、程序或脚本等。 10.1、管道 管道是Linux编程中最常用的技术之一。 10.1.1、管道简介 管道技术是Linux的一种基本的进程间通信技术,它利用先进先出排队模型来指挥进程间的通信。对于管道,我们可以形象地把它们当做是连接两个实体的一个单向连接器。 Linux管道可用于应用程序之间、Linux命令之间,以及应用程序和Linux命令之间的通信,Shell编程主要是利用管道进行Linux命令之间的通信,其一般格式为: command1 | command2 | command3 | ... |commandn command1到commandn表示Linux的n个命令,这n个命令利用管道进行通信。command1执行完后,如果没有管道,command1的输出结果将直接显示在Shell上,当Shell遇到管道符“|”后,就将command1的输出发送给command2,作为command2的输入。 命令:ls -l | grep co #列出当前目录下的文件列表,并在其中查找与vi匹配的行 结果:-rwxrwxr-x 1 xiaomiao xiaomiao 344 8月 7 14:33 constant_exam1.sh -rwxrwxr-x 1 xiaomiao xiaomiao 197 8月 8 10:08 continue_exam1.sh -rwxrwxr-x 1 xiaomiao xiaomiao 180 8月 8 10:15 continue_exam2.sh -rwxrwxr-x 1 xiaomiao xiaomiao 173 8月 8 10:19 continue_exam3.sh 命令:ls -l | grep co | wc -l #wc -l命令可统计结果的行数 结果:4 10.1.2、cat和more命令 cat和more命令都用来显示文件的内容,它们的基本格式为: cat [option] fileName more [option] [+linenum] fileNames option指选项,more命令中+linenum可以指定显示文件的起始行,即从linenum这一行开始显示整个文件。 cat命令的选项名称及其意义: -a #显示文件的所有内容 -b #由1开始对所有输出的行数编号,但对空白行不编号 -E #每一行末显示“$” -n #由1开始对所有输出的行数编号 -s #当遇到有连续两行以上的空白行,就替换为一行空白行 -v #不可显示的字符(制表符、新行符和换页符除外)以可见的形式显示 more命令的选项名称及其意义: -num #一次显示的行数 -d #提示使用者,在画面下方显示“Press space to continue,q to quit.”如果使 用者按错键,则会显示”Press h for instructions.” -l #取消遇见特殊字元^L(送纸字元)时会暂停的功能 -f #计算行数时,以实际的行数,而非自动换行过后的行数(有些单行字数太长的 会被扩展为两行或两行以上) -p #不以卷动的方式显示每一页,而是先清除屏幕后再显示内容 -c #跟-p相似,不同的是先显示内容,再清除其他旧资料 -s #当遇到有连续两行以上的空白行,就替换为一行空白行 -u #禁止显示强调符,即不显示下划线(跟据环境变量TERM指定的terminal而有 所不同) +/ #在每个文件显示前搜寻该字串(pattern),然后从该字串之后开始显示 +num #从第num行开始显示 两个命令最大的区别在于:cat命令在显示文件时不提供分页功能,而more命令在显示超过一页的文件时提供了分页功能。使用more命令时在最后一行提示—More(11%)--,表示已经显示了该文件内容的11%,用户可以按回车键浏览该文件的剩余内容。 cat命令还可以同时显示多个文件,命令格式为:cat file1 file2 ... filen 10.1.3、sed命令与管道 sed和awk命令都是从文件读取输入数据,同时也都能支持从管道获得输入数据。

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档