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

标准的I/O 和管道

时间:2016-07-31 16:09:58      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:输入输出与管道

标准输入和输出

I/o设备:

程序:指令+数据

打开的每个文件都有文字描述符

标准输入(standard input):0  默认的标准输入设备键盘

标准输出(standard output) :1  不是所有命令都有标准输出,默认输出设备当前终端窗口

标准错误(sandard errot):2 默认输出错误当前终端窗口

重定向定义:将标准输出和错误输出改变其默认输出设备

重定向符号

输出重定向:一个命令的结果保存到另一个地方,不由显示器显示,可以输入其他终端或者保存到文件中:

 

输出重定向符号:>:覆盖重定向输出  set –C将禁用覆盖重定向,set +C 开启覆盖重定向


技术分享

技术分享

>>:追加重定向输出

2>:错误输出重定向

将标准输出结果输出到另一个终端:

技术分享

 

技术分享

 

将错误输出追加到一个文件中:

技术分享

 

将错误和正确的定向到同一个文件中

 技术分享

&> 2>&1(比较传统的输出方式,兼容性好)

 

ls /boot  /djfhjdf  &> /test/daa.log


ls /boot  /aaa  > /test/daa.log  2>&1

技术分享

多条命令重定向 (命令一;命令二 ) > 文件

技术分享

 

标准输入的重定向:

<:覆盖输入重定向

<<:追加输入重定向

 

 

cat < file

cat < file >file2:将file输入重定向,并将结果输入重定向到f2

技术分享

 

将多个文件内容合并到同一个文件中:

cat f1 f2 > f3 f1,f2 文件输出f3

技术分享

mail 需要标准输入

 

多行重定向 :EOF为自定义的开始结束符,

cat << EOF

技术分享


管道符

管道接收的是标准输出,不是标准错误

|& 前面命令无论对错,后面都进行处理

技术分享

技术分享


 

tee命令:

讲不从标准输出的命令输出到屏幕上

技术分享

 

 

/dev/null  空设备,将不想要的文件丢入此文件,收集垃圾信息,并且不占用空间


标准的I/O 和管道

标签:输入输出与管道

原文地址:http://11750513.blog.51cto.com/11740513/1832287

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