zoukankan      html  css  js  c++  java
  • 标准错误重定向、标准输入重定向

    标准错误重定向没有专用的重定向操作符。为了重定向标准错误,我们必须参考其文件描述符。 一个程序可以在几个编号的文件流中的任一个上产生输出。虽然我们已经将这些文件流的前 三个称作标准输入、输出和错误,shell 内部分别将其称为文件描述符0、1和2。shell 使用文件描述符提供 了一种表示法来重定向文件。因为标准错误和文件描述符2一样,我们用这种 表示法来重定向标准错误:

    ls -l /bin/usr 2> ls-error.txt

    重定向标准输出和错误到同一个文件

    ls -l /bin/usr > ls-output.txt 2>&1

    现在的 bash 版本提供了第二种方法,更精简合理的方法来执行这种联合的重定向

    ls -l /bin/usr &> ls-output.txt

    处理不需要的输出

    有时候“沉默是金”,我们不想要一个命令的输出结果,只想把它们扔掉。这种情况 尤其适用于错误和状态信息。系统通过重定向输出结果到一个叫做”/dev/null”的特殊文件, 为我们提供了解决问题的方法。这个文件是系统设备,叫做位存储桶,它可以 接受输入,并且对输入不做任何处理。为了隐瞒命令错误信息,我们这样做:

    ls -l /bin/usr 2> /dev/null

    标准输入重定向

    到目前为止,我们还没有遇到一个命令是利用标准输入的(实际上我们遇到过了,但是 一会儿再揭晓谜底),所以我们需要介绍一个。

    cat - 连接文件

     cat 命令读取一个或多个文件,然后复制它们到标准输出,就像这样:

    cat [file]

    cat 经常被用来显示简短的文本文件。因为 cat 可以 接受不只一个文件作为参数,所以它也可以用来把文件连接在一起。比方说我们下载了一个 大型文件,这个文件被分离成多个部分(USENET 中的多媒体文件经常以这种方式分离), 我们想把它们连起来。如果文件命名为:

    movie.mpeg.001 movie.mpeg.002 … movie.mpeg.099

    我们能用这个命令把它们连接起来:

    cat movie.mpeg.0* > movie.mpeg

    因为通配符总是以有序的方式展开,所以这些参数会以正确顺序安排。

  • 相关阅读:
    继承—泛型
    单例模式
    继承 4—Monkey
    继承 3—A B E
    继承 2—people
    继承 1—Mucic
    面向对象—汽车
    面向对象—封装—汽车
    Linux下查看CPU型号,内存大小,硬盘空间的命令
    redis源码——数据结构与对象
  • 原文地址:https://www.cnblogs.com/clemente/p/10697032.html
Copyright © 2011-2022 走看看