码迷,mamicode.com
首页 > 其他好文 > 详细

标准I/O和管道

时间:2018-08-05 00:35:03      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:错误输出   fstab   实现   标准输出   set   故障   基础上   err   允许   

1:三种I/O设备

标准输入(STDIN)  -0   默认接受来自键盘的输入

标准输出(STDOUT) -1  默认输出到终端窗口

标准错误(STDERR) -2  默认输出到终端窗口

I/O重定向:改变默认位置

>把正确结果输出到文件

2> 把错误输出到文件

&>把所有的输出重定向到文件,不管对错

set  -C  禁止将内容覆盖已有文件,但可追加  

set    +C   允许覆盖              >|   file  强制覆盖

>>  原有内容基础上,追加内容

&>    覆盖重定向                        &>>  追加重定向

2:tr  转换和删除字符    

tr  ’a-z‘   'A-Z'<  /etc/issue

该命令会把/etc/issue中的小写字符都转换成大写字符

tr -d abc  < /etc/fstab   删除fstab中的所有abc中任意字符

 3:less  :一页一页的查看输入         ls -l  /etc | less  

tee  重定向到多个目标    

命令1 |tee  [-a ] 文件名 |命令2

把命令1的输出保存在文件中,作为命令2的输入      -a  追加

使用:保存不同阶段的输出       复杂管道的故障排除

同时查看和记录输出

4:管道(使用符号“|”表示)用来连接命令

命令1|命令2|命令3|.....

将命令1的输出发送给命令2的输入,命令2的输出发送到命令3的输入

标准错误默认不能通过管道转发,可以用2>&1  或|&实现

最后一个命令会在当前shell进程的子shell进程中执行

组合多种工具的可能

ls | tr ‘a-z’   ‘A-Z'


标准I/O和管道

标签:错误输出   fstab   实现   标准输出   set   故障   基础上   err   允许   

原文地址:http://blog.51cto.com/13873505/2154781

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!