代码之家  ›  专栏  ›  技术社区  ›  Denys

阻止脚本输出状态代码

  •  -1
  • Denys  · 技术社区  · 10 年前

    我写了一些难看的脚本,除了在输出中提供我想要的东西之外,它还提供了状态代码值。

    脚本输出如下。如何防止脚本在输出中显示该状态代码??

    注:我会把剧本放在下面,希望它不会太伤你的眼睛

        Status code = 0
    
        Status code = 0
    
        Status code = 0
        job_1_1_1
    
        Status code = 0
    
        Status code = 0
    
        Status code = 0
    
    
        Status code = 0
    
        Status code = 0
    
        Status code = 0
        job_1_1_2
    
        Status code = 0
    
        Status code = 0
    
    START_ID=`dsjob -logsum -type STARTED  UPSTREAM_MDM_D4  seq_1_1  | nawk 'ORS=(FNR%2)?FS:RS' | grep Starting | tail -1 | awk '{print $1 }'`; FATAL_IDS=`dsjob  -logsum -type INFO UPSTREAM_MDM_D4  seq_1_1  | grep INFO | awk '{print $1 }'`; for TEST_ID in ${FATAL_IDS}; do if [[ "${TEST_ID}" -ge "${START_ID}" ]]; then WARN_DTL=`dsjob  -logdetail UPSTREAM_MDM_D4 seq_1_1 ${TEST_ID}`; if `echo $WARN_DTL|grep -q 'has finished, status = 3'`; then message=`echo $WARN_DTL| grep -oP '\w+(?= has finished, status = 3)'`; fatal_errors=$fatal_errors$'\n'$message;fi; fi;done; echo $fatal_errors
    
    1 回复  |  直到 5 年前
        1
  •  0
  •   clt60    10 年前

    你应该决定你想要实现的目标,其中一种方法可以是例如:

    (
    your commands
    ) 2>&1 | grep -v 'Status code = 0'
    

    小心-以上不是一个好的做法-只是一个快速破解的解决方案。。。