bash功能特性五 重定向和管道

一、管道

    使用“|”符号来实现管道功能;管道可以实现在一行中处理使用管道符号连接的多个命令,后面的命令使用前面命令的输出结果做为处理对象。

1.png

2.png

二、数据流重定向

    数据输入和输出的类型:

        标准输入(stdin):代码为0,默认设备为键盘;

        标准输出(stdout):代码为1,默认设备为显示器;

        标准错误输出(stderr):代码为2,默认设备为显示器。

    重定向就是将数据不使用默认的设备进行输入或输出。

    1、输出重定向

        标准输出重定向:

            COMMAND > POSITION:覆盖输出

            COMMAND >> POSITION:追加输出

1.png

2.png

3.png

        标准错误重定向:

            COMMAND 2> POSITION:覆盖输出

            COMMAND 2>> POSITION:追加输出

4.png

        标准错误的追加重定向与标准输出的追加重定向相类似,此处不再进行演示。

        合并重定向:

            COMMAND &> POSITION

            COMMAND > POSITION 2> &1

4.png

        分别重定向:

            COMMAND > POSITION 2> POSITION2

5.png

    2、输入重定向

        COMMAND < FILE:以FILE中的内容来替代键盘输入;

        COMMAND << STRING:以STRING为输入结束符;

6.png

7.png

    3、重定向的应用

        输入重定向经常用于不能处理参数的命令,例如tr命令。

        tr命令格式:tr [OPTION]… SET1 [SET2] 

        作用:用于删除文字或进行文字的替换。

            OPTIONS:

                -d:删除指定的字符;

                -s:替换掉重复的字符;

8.png1.png    4、多道输出

        使用tee命令来实现多道输出,即将命令的结果在屏幕上显示的同时,也在指定的文件中保存;使用-a选项可以在文件中追加重定向的内容。

7.png

    5、数据黑洞

       所有流向数据黑洞的数据都将被丢弃,使用/dev/null这个设备来实现此功能。

1.png

    6、重定向的控制

        set -C  关闭输出重定向的覆盖功能

        set +C 打开输出重写向的覆盖功能

        >|:在关闭了输出重定向的覆盖功能时,依然执行覆盖操作

2.png

 

原创文章,作者:petmaster,如若转载,请注明出处:http://www.178linux.com/3262

(0)
petmasterpetmaster
上一篇 2015-04-21 20:23
下一篇 2015-04-22 01:00

相关推荐

  • 系统基础之shell脚本编程详解4(数组及字符串处理,变量赋值和配置文件)

    系统基础之shell脚本编程详解4(数组及字符串处理,变量赋值和配置文件)     今天来讲shell脚本编程的最后一些内容,数组及字符串处理,变量赋值和配置文件.这些内容也是我们经常在工作中使用到的知识点.下面让我们来详细了解下: 数组:   程序=指令+数据        &…

    Linux干货 2016-08-24
  • Linux中设置磁盘配额和RAID

    第一篇:设置磁盘配额 综述     •在内核中执行     •以文件系统为单位启用     •对不同组或者用户的策略不同       根据块或者节点进行限制         •执行软限制(soft limit)   &n…

    Linux干货 2016-09-05
  • 0804练习与作业

    0804练习与作业 练习  1 、找出ifconfig 命令结果中本机的所有IPv4 地址 答: 使用cut将电脑的IP地址提取出来。   经过观察,这些信息极为不规则,没有明显的分隔符。这时们需要首先提取出IP地址所在的行,然后去定义一个合适的分隔符,再利用cut进行提取即可。(思路:化繁为简,化不规则为规则,这样才能更好的套用我们的命…

    Linux干货 2016-08-08
  • 怎么删除邮件?

    linux邮件位置一般在/var/spool/mail/root下,如果想查看邮件,在屏幕上输入mail就可以查看了,输入之后会出现&符号,你想看哪一封邮件,直接在后面跟对应的数字就好了。 如果你感觉自己的邮件太多了,比较占内存,那就删了吧。 d 删除当前邮件,指针并下移。   d 3 删除编号为3 的邮件。   d1-100 删…

    2017-07-22
  • LINUX的初探

    一般而言,计算机的组成遵循着“冯诺依曼体系结构”。这种结构的体现实质上是一种存储程序的原理,把程序本身当作数据来对待,程序和该程序处理的数据用同样的方式来存储。这种结构的要点是:计算机的数制采用二进制;计算机应该按照程序顺序执行。

    2018-03-04
  • Linux 下的帮助及文件管理

    1、whatis     whatis command 或 man -f command     仅能提供命令基本的介绍。不提具体用法。     基于数据库的查找,优点:检索速度快;缺点:缺乏实时性    &n…

    2017-07-15