给予有什么不同
set -e set -x
和
set -xe
我得到了不同的回答。请帮我澄清一下
evrscar21#
set -x
在执行shell命令之前打印它。这个特性帮助程序员跟踪他们的shell脚本。
set -e
如果一个命令的返回码不为0,并且调用者没有检查它,则shell脚本将退出。这个特性使shell脚本健壮。set -e和set -x经常出现在shell脚本的头部:
set -x set -e echo "I am a shell script."
或者使用shell命令:
sh -xe shell_script.sh
参考:http://julio.meroh.net/2010/01/set-e-and-set-x.html
6fe3ivhb2#
你说的大概是bash吧。根据它的manual,-e(参见4.3.1节)告诉bash在某些条件下退出(这可能适用于您的脚本)。如果是这种情况,“set -xe“在退出之前可能会比“set -e“后面跟着“set -x“打印更多的跟踪。
-e
2条答案
按热度按时间evrscar21#
在执行shell命令之前打印它。这个特性帮助程序员跟踪他们的shell脚本。
如果一个命令的返回码不为0,并且调用者没有检查它,则shell脚本将退出。这个特性使shell脚本健壮。
set -e
和set -x
经常出现在shell脚本的头部:或者使用shell命令:
参考:http://julio.meroh.net/2010/01/set-e-and-set-x.html
6fe3ivhb2#
你说的大概是bash吧。根据它的manual,
-e
(参见4.3.1节)告诉bash在某些条件下退出(这可能适用于您的脚本)。如果是这种情况,“set -xe
“在退出之前可能会比“set -e
“后面跟着“set -x
“打印更多的跟踪。