标签:输入输出与管道
标准输入和输出
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 空设备,将不想要的文件丢入此文件,收集垃圾信息,并且不占用空间
标签:输入输出与管道
原文地址:http://11750513.blog.51cto.com/11740513/1832287