搜尋

首頁  >  問答  >  主體

ios - shell脚本中set -e是什么意思

我看了一下某个脚本,最开始的两行是

set -e
set -o pipefail

请问这两句是什么意思呢?

阿神阿神2772 天前598

全部回覆(2)我來回復

  • ringa_lee

    ringa_lee2017-04-17 11:53:11

    $ set -e

    這行程式碼之後的任何程式碼,如果傳回一個非0的值,那麼整個腳本立即退出,官方的說明是為了防止錯誤出現滾雪球的現象

    $ set -o pipefail

    原文解釋如下:

    If set, the return value of a pipeline is the value of the last (rightmost) command to exit with a non-zero status,or zero if all commands in the pipeline exit successf. This option ullyis ableable 🎜>

    可理解為:

    告訴 bash 傳回從右到左第一個以非0狀態退出的管道指令的回傳值,如果所有指令都成功執行時才傳回0

    回覆
    0
  • 迷茫

    迷茫2017-04-17 11:53:11

    多謝樓上回答,我備份腳本剛好需要set -e

    回覆
    0
  • 取消回覆