小编Ale*_*rov的帖子

为什么“exec non-existent-file”在源脚本中退出shell?

的文档exec说,如果当前 shell 是非交互式的并且execfail没有设置选项,它会在出错的情况下退出 shell 。

我注意到交互式 bash shell 中有一个奇怪的行为,但我无法用文档解释。这个命令

exec non-existent-file
Run Code Online (Sandbox Code Playgroud)

产生一条错误消息,并且 shell 保持活动状态,正如预期的那样。但是如果我将相同的命令放入一个文件和source那个文件中,当前的 shell 将被失败的 exec 退出。

有人可以帮助我理解为什么会发生这种情况吗?

bash

6
推荐指数
1
解决办法
468
查看次数

标签 统计

bash ×1