Shell脚本Shebang行#!/bin/bash -xe中的-xe参数有什么作用?
#!/bin/bash -xe 中 -xe 标志的功能说明 Shebang行里跟在解释器路径后面的内容,会作为启动参数直接传给对应的shell程序,这里的-xe是两个独立bash短选项的合并写法,两个选项的具体作用如下:
-e:开启errexit错误退出模式。该模式下,脚本内只要有任意一条命令返回非0退出码(代表命令执行失败),整个脚本会立刻终止,不再执行后续逻辑。这个选项可以避免前置步骤出错后脚本继续运行,引发意料之外的问题,比如切目录失败后执行删除命令误删错误路径下的文件。-x:开启xtrace执行追踪模式,也就是常用的脚本调试模式。开启后,bash在执行每一条命令前,会先把完成变量替换、通配符展开、命令拼接后的完整实际执行内容打印到标准错误流,打印的内容默认以+作为前缀,能让你清晰看到脚本每一步实际运行的命令内容,排查问题的时候效率很高。
这种直接写在Shebang里的选项,和你手动在终端执行
bash -xe 你的脚本.sh的运行效果完全等价。
内容的提问来源于stack exchange,提问作者Zain Ul Abideen
相关产品推荐
相关产品推荐

