如何从子 shell 中在父 shell 中设置变量?
a=3
(a=4)
echo $a
子 shell 的全部意义在于它doesn't影响通话会话。在 bash 中,子 shell 是一个子进程,其他 shell 有所不同,但即使如此,子 shell 中的变量设置也不会影响调用者。根据定义。
您需要子外壳吗?如果您只需要一个组,请使用大括号:
a=3
{ a=4;}
echo $a
gives 4
(注意其中的空格)。或者,将变量值写入 stdout 并在调用者中捕获它:
a=3
a=$(a=4;echo $a)
echo $a
避免使用反引号``,它们已被弃用,可能难以阅读,并且已知在某些情况下会导致问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)