shell bash中设置命令set

1 Preface/Foreword

set命令用于shell脚本在执行命令时候,遇到异常的处理机制。

2 Usage

2.1 set -e

当执行命令过程中遇到异常,那么就退出脚本,不会往下执行其它命令。

#!/bin/bash

#set -e
root

GIT_TAG=${CI_BUILD_TAG-NOTAG}

GIT_REV=$(git rev-parse --short HEAD)

GIT_DATE=(date +%y%m%d -d@(git show -s --format=%ct HEAD))

CI_PIPELINE_ID=${CI_PIPELINE_ID-0}

if [ $GIT_TAG == "NOTAG" ]; then

APP_FIRMWARE_VERSION={GIT_TAG}-{GIT_DATE}-{CI_PIPELINE_ID}-{GIT_REV}

else

APP_FIRMWARE_VERSION=${GIT_TAG}

fi

echo -n ${APP_FIRMWARE_VERSION}

NOTE:遇到命令错误,仍然会继续往下执行。

#!/bin/bash

set -e
root

GIT_TAG=${CI_BUILD_TAG-NOTAG}

GIT_REV=$(git rev-parse --short HEAD)

GIT_DATE=(date +%y%m%d -d@(git show -s --format=%ct HEAD))

CI_PIPELINE_ID=${CI_PIPELINE_ID-0}

if [ $GIT_TAG == "NOTAG" ]; then

APP_FIRMWARE_VERSION={GIT_TAG}-{GIT_DATE}-{CI_PIPELINE_ID}-{GIT_REV}

else

APP_FIRMWARE_VERSION=${GIT_TAG}

fi

echo -n ${APP_FIRMWARE_VERSION}

NOTE:遇到错误,直接退出。