zoukankan      html  css  js  c++  java
  • 脚本重定向输出【错误、正确】——分析service脚本中用到的语法

    <1>

    >&2 1>&2 也就是把结果输出到和标准错误一样之前如果有定义标准错误重定向到某log文件,那么标准输出也重定向到这个log文件
    如:ls 2>a1 >&2 (等同 ls >a1 2>&1)
    把标准输出和标准错误都重定向到a1,终端上看不到任何信息。

    第一种情况:标准正确输出(有>&2)====》

    [root@slave1 test]# ls 2>a2>&2           等同于     #ls  >a2

    [root@slave1 test]# ls
    a1 a2 core txt
    [root@slave1 test]# cat a2     //ls输出的是标准正确输出,(2>a2)之前如果有定义标准错误重定向到某log文件,那么标准输出也重定向到这个log文件(>&2)
    a1
    a2
    core
    txt

    ----------------------------------------------------------------------------------------------------------------------------

    第二种情况:标准正确输出(无>&2)====》

    [root@slave1 test]# ls 2>a3
    a1 a2 a3 core txt
    [root@slave1 test]# ls
    a1 a2 a3 core txt
    [root@slave1 test]# cat a3

    ----------------------------------------------------------------------------------------------------------------------------

    第三种情况:标准错误输出(>&2)====》

    [root@slave1 test]# ls
    core txt
    [root@slave1 test]# ls sdfji 2>a1 >&2
    [root@slave1 test]# ls
    a1 core txt
    [root@slave1 test]# cat a1
    ls: cannot access sdfji: No such file or directory          //2即标准错误输出.

    第四种情况:

    [root@slave1 test]# ls >a2 >&2         //有>&2则正确输出不会重定向到文件.
    a1 a2 core txt

    第五种情况:

    [root@slave1 test]# ls &>a2 >&2           //这个情况和第1种情况相同(在是标准错误输出时),(在是标准正确输出时)和第四种情况相同.
    [root@slave1 test]# ls
    a1 a2 core txt
    [root@slave1 test]# cat a2
    a1
    a2
    core
    txt

    ----------------------------------------------------------------------------------------------------------------------------

    总结:加上>&2 表示之前如果是"标准错误重定向"到某log文件,那么"标准正确输出"也重定向到这个log文件;如果是"标准正确重定向"到某文件,则不会重定向到这个log文件,“标准正确输出”会正常输出.          //即之前是错误的,现在正确也记录到里面;之前是正确的,现在也正确输出.

     

    代码示例请参考下一篇《service xx status》之service脚本解析

  • 相关阅读:
    【华为云技术分享】手把手教你如何在ARM上源码编译Redis
    【华为云技术分享】Linux内核编程环境 (2)
    华为云MySQL 8.0正式商用,全新增强版开源利器强势来袭
    【转载】Mysql删除所有表不删除数据库方法
    【转载】使用Sublime Text 3的HTML-CSS-JS Prettify插件格式化代码
    【转载】Node.js学习笔记之一
    jquery分页插件pagination.js的使用
    Windows平台下搭建Git服务器
    js实现返回页面顶部
    交换机的级联和堆叠
  • 原文地址:https://www.cnblogs.com/itcomputer/p/4641645.html
Copyright © 2011-2022 走看看