考试首页 | 考试用书 | 培训课程 | 模拟考场 | 考试论坛  
  当前位置:Linux认证 > 红帽认证 > 红帽认证辅导 > 文章内容
  

RHCE7认证学习笔记:重定向与管道

来源:Linux社区 [ 2016年2月17日 ] 【

1、输出重定向

    重定向正确内容:

    cat xx.file > yy.file 相当于cat xx.file 1>yy.file将文件内容重定向到yy.file,将会覆盖原有文件内容;

    cat xx.file 》yy.file 将文件内容追加重定向到yy.file,不会覆盖原有文件内容;
    重定向错误的结果

        xxx 2> yy.file 执行错误的命令产生的错误结果重定向到yy.file文件

          xxx 2》 yy.file 
        XXX  >>yy  2>>bb
  正确与错误都重定向到相同文件
这种写法比较常用: [root@clz ~]# cat /etc/passwd &>>/tmp/xx

这种学法不常用,将错误的当成正确的输出:[root@clz ~]# cat /etc/passwd >/tmp/xx 2>&1

    可以从以下的示例中更加深入的理解正确的输入重定向:

    在/dev/pts/1上执行以下命令:

[root@clz ~]# tail -f /var/log/messages >/tmp/xx 2>/tmp/yy

    在/dev/pts/0上查看执行该命令的进程号:
[root@clz fdinfo]# ps aux | grep tail|grep -v 'grep'
root      5567  0.1  0.0 107932  620 pts/1    S+  15:37  0:00 tail -f /var/log/messages

    根据进程号,进入到/proc目录下找到进程号对应的文件夹:
[root@clz fdinfo]# cd /proc/5567

    进入fd/文件夹,执行ls -l命令,可以看到链接文件:0代表输入,1代表标准正确的输出,2,代表标准错误的输出,3、表示命令操作的文件,如果对多个文件进行操作,则会有4,5...显示其他的文件

RHCE7认证学习笔记3——重定向与管道

        在dev目录下面,可以看到以下逻辑的标准输入输出设备,当一个进程运行时,self就会替换成该进程的进程号:
[root@clz fd]# ls -al /dev/std*
lrwxrwxrwx. 1 root root 15 Dec 30  2014 /dev/stderr -> /proc/self/fd/2
lrwxrwxrwx. 1 root root 15 Dec 30  2014 /dev/stdin -> /proc/self/fd/0
lrwxrwxrwx. 1 root root 15 Dec 30  2014 /dev/stdout -> /proc/self/fd/1

首页 1 2 尾页
本文纠错】【告诉好友】【打印此文】【返回顶部
将考试网添加到收藏夹 | 每次上网自动访问考试网 | 复制本页地址,传给QQ/MSN上的好友 | 申请链接 | 意见留言 TOP
关于本站  网站声明  广告服务  联系方式  站内导航  考试论坛
Copyright © 2007-2013 中华考试网(Examw.com) All Rights Reserved