zoukankan      html  css  js  c++  java
  • Shell 环境中的输入输出重定向

    Linux Shell 环境中的输入输出重定向,用符号<和>来表示。0、1和2分别表示标准输入、标准输出和标准错误。

    1.重定向标准输出到文件:
    cat fo > foo.txt
    2.重定向标准错误到文件
    cat fo 2> foo.txt
    3.重定向标准输出到标准错误
    cat fo 1>&2
    4.重定向标准错误到标准输出
    cat fo 2>&1
    5.重定向标准输出,标准错误到同一个文件
    cat fo > fo.txt 2>&1或cat foo &> foo.txt
    这里第个顺序很重要,先把标准输出重定向到文件,再把标准错误输出到标准输出,因为标准输出已经重定向到文件,所以标准错误与重定向到文件。
    >&与&>效果相同
     
    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    以前经常看到 & 1, &2这样的符号,但是不知道是什么意思。

    系统中有12个文件描述符,0,1,2是标准输入,输出和错误。可以任意使用文件描述符3到9

    文件文件描述符
    输入文件——标准输入 0
    输出文件——标准输出 1
    错误输出文件——标准错误 2

    标准输入:0

    缺省是键盘输入,也可以是文件或其他命令的输出

    标准输出:1

    缺省是输出到终端,也可以输出到文件

    标准错误:2

    命令错误信息的输出,缺省输出到终端,也可以输出到文件

    如果没有特别指定文件描述符,命令将使用缺省的文件描述符,键盘输出,终端输出

    在输入一个cmd后,如果没有指定标准输出或错误输出,那么会将所有的输出都显示在屏幕上,

    如果命令为:cmd > result.out 该命令等价为 cmd 1>result.out,会将标准输出重定向到result.out文件中,错误输出显示在屏幕上;

    如果命令为:cmd 2>result.out ,会将错误输出重定向到result.out文件,标准输出显示在屏幕上;

    如果命令为:cmd >result.out 2>&1,会将标准输出和错误输出都重定向到result.out文件,屏幕上不会有输出。

  • 相关阅读:
    IE的if条件判断
    嵌套div的margin-top不生效
    DocumentFragment对象
    javascript严格模式
    某视频网站下载分析
    c# winform 视频转字符动画
    asp.net mvc 5 蛋疼的问题
    asp.net mvc 防止重复提交
    easyHOOK socket send recv
    C# 之泛型详解
  • 原文地址:https://www.cnblogs.com/chengjian-physique/p/7906731.html
Copyright © 2011-2022 走看看