“-e”开关在bash shebang中起什么作用
在狂欢节上,“-e”开关在bash shebang中起什么作用,bash,Bash,在狂欢节上,-e标志做什么 #!/bin/bash -e 很明显这是一面旗帜,但不清楚它是什么 e、 在剧本的开头 当命令失败时,使用set-o errexit(又称set-e)使脚本退出 请参阅以下文章以获取有关编写好的bash脚本的更多信息: 来自《曼巴什》: -e Exit immediately if a pipeline (which may consist of a single simple command), a
-e
标志做什么
#!/bin/bash -e
很明显这是一面旗帜,但不清楚它是什么
e、 在剧本的开头
当命令失败时,使用set-o errexit(又称set-e)使脚本退出
请参阅以下文章以获取有关编写好的bash脚本的更多信息:
-e Exit immediately if a pipeline (which may consist of a
single simple command), a list, or a compound command
(see SHELL GRAMMAR above), exits with a non-zero sta‐
tus. The shell does not exit if the command that fails
is part of the command list immediately following a
while or until keyword, part of the test following the
if or elif reserved words, part of any command executed
in a && or || list except the command following the
final && or ||, any command in a pipeline but the last,
or if the command s return value is being inverted with
!. If a compound command other than a subshell returns
a non-zero status because a command failed while -e was
being ignored, the shell does not exit. A trap on ERR,
if set, is executed before the shell exits. This option
applies to the shell environment and each subshell envi‐
ronment separately (see COMMAND EXECUTION ENVIRONMENT
above), and may cause subshells to exit before executing
all the commands in the subshell.
If a compound command or shell function executes in a
context where -e is being ignored, none of the commands
executed within the compound command or function body
will be affected by the -e setting, even if -e is set
and a command returns a failure status. If a compound
command or shell function sets -e while executing in a
context where -e is ignored, that setting will not have
any effect until the compound command or the command
containing the function call completes.
因此,如果出现错误,它将立即退出。因此在shebang使用它与
set-e
相同?是的,它的工作原理是相同的:bash-e-c“echo‘这是第一条消息’;false;echo‘你看不见我’”
:>>这是第一条消息。你检查过手册页了吗?相关阅读:@Steve yes。我找不到任何关于它在shebang使用的信息。它被用作条件表达式,但似乎不适用。i、 e.“-e file True(如果文件存在)。”