bash函数中的局部变量赋值不会像非局部变量那样浮出子壳返回值

时间:2018-11-29 05:34:59

标签: bash

通常,当我为子shell的结果分配变量时,我也可以响应子shell的返回值,例如:

var1="$(false)" || exit $?

我发现函数中的局部变量赋值总是返回true,所以这永远不会到达return子句:

local var1="$(false)" || return $?

这是为什么?我可以使它的行为像普通变量一样,同时仍然具有作用域范围吗?

0 个答案:

没有答案