退出源shell脚本的代码

时间:2013-02-11 05:07:36

标签: bash return exit-code

可以获取Shell脚本,即在当前shell中执行,例如

. ~/some_script.sh

但也可以通过子shell调用它们,例如

/bin/bash ~/another_script.sh

编写一个脚本我正在将其方案从采购转换为子壳,然后再转回采购。有些东西会使写作变得与众不同。现在我一直处于退出状态,因为我不确定 - return状态会干扰exit产生的状态吗?编写tldp上的原因会保留一些状态,但所有示例都是关于exit指令的。这些与返回码相关的限制也是如此吗?

我在ABS指南中找到的所有有用的是'A return命令可选地接受一个整数参数,该参数作为函数的“退出状态”返回到调用脚本,并且此退出状态分配给变量$?。',但我对'as'有疑问,并引用'退出状态'。

1 个答案:

答案 0 :(得分:0)

returnexit返回的代码是相同的,关键字仅用于不同的上下文(return用于从函数和源代码返回,exit用于退出目前的壳)。

它们不会相互干扰,但没有参数的exitreturn将使用前一个命令的返回值,该值可能已在另一个{{1 }}或exit语句。