[linux_shell]数据流重定向

1. 标准输入(stdin):代码为0,使用<或<<;

2. 标准输出(stdout):代码为1,使用>或>>;(等同于1>或1>>)

3. 标准错误输出(stderr):代码为2,使用2>或2>>;

其中:>:表示覆盖;>>:表示追加;

/dev/null:垃圾桶黑洞设备与特殊写法:2> /dev/null:将错误信息忽略掉,不显示不储存

如:find /home -name .bashrc 2> /dev/null

 

将命令数据全部写入一个文件list中:

find /home -name .bashrc > list 2> list     #错误,两条数据可能会交叉写入该文件内,造成次序混乱

find /home -name .bashrc > list 2>&1              #正确,注意:2>&1中间无空格

find /home -name .bashrc &> list                     #正确,与上面的等同

 

对于标准输入:stdin,<与<<

如:cat > catfile < ~./bashrc         #将~/.bashrc文件的内容保存到catfile中

一般执行cat > catfile时,我们要通过ctrl+d来结束输入;

这里,我们可以通过cat > catfile << "terminator",通过在新的一行中输入terminator[Enter]来结束输入。

 

posted on 2013-01-08 18:51  Lo0ong  阅读(292)  评论(0编辑  收藏  举报

导航