• shell 中最常使用的 FD (file descriptor)


    在 shell 程式中,最常使用的 FD (file descriptor) 大概有三个, 分别是:

    0 是一个文件描述符,表示标准输入(stdin)
    是一个文件描述符,表示标准输出(stdout)

    是一个文件描述符,表示标准错误(stderr)

    一般来说, "1>" 通常可以省略成 ">". 
    有了这些认识才能理解 "1>&2" 和 "2>&1". 
    1>&2 正确返回值传递给2输出通道 &2表示2输出通道 
    如果此处错写成 1>2, 就表示把1输出重定向到文件2中. 
    2>&1 错误返回值传递给1输出通道, 同样&1表示1输出通道.

    & 是一个描述符,如果1或2前不加&,会被当成一个普通文件。

    1>&2 意思是把标准输出重定向到标准错误.

    2>&1 意思是把标准错误输出重定向到标准输出。

    &>filename 意思是把标准输出和标准错误输出都重定向到文件filename

    我们再看一个例子:

    1
    2
    3
    lsnodir 1> filename.txt 2>&1
    catfilename.txt
    ls: nodir: No such fileor directory

    上面例子把 标准输出 重定向到文件 filename.txt,然后把 标准错误 重定向到 标准输出

    所以最后的错误信息也通过标准输出写入到了文件中,比较例3,4,5,就能明白其作用。

  • 相关阅读:
    超详细从零记录Hadoop2.7.3完全分布式集群部署过程
    hadoop学习之hadoop完全分布式集群安装
    Fine-tune with Pretrained Models
    Module
    Symbol API
    Gluon parameters 和 Blocks 命名
    mxnet 数据读取
    Adversarial Latent Autoencoders
    A New Meta-Baseline for Few-Shot Learning
    Deploy a plain HTTP registry
  • 原文地址:https://www.cnblogs.com/cangqiongbingchen/p/6434211.html
Copyright © 2020-2023  润新知