我将从我的bash互动式shell中运行一个bash脚本,方法如下:
我困惑的是,这个脚本会在新的 shell 实例中运行还是在当前 bash 实例的子 shell 中运行? 我认为所有从 shell 调用的 shell 脚本都会在一个新的 shell 中运行,因此它们无法读取调用 shell 的本地 shell 变量。 另外,如果我在被调用的脚本中放置 "echo $BASH_SUBSHELL" ,它会返回值 "0",表明它不是一个子 shell。但是某些文章则说,当从 shell 中执行 shell 脚本时,会调用一个子 shell。请帮助解答。
./shell.sh
我困惑的是,这个脚本会在新的 shell 实例中运行还是在当前 bash 实例的子 shell 中运行? 我认为所有从 shell 调用的 shell 脚本都会在一个新的 shell 中运行,因此它们无法读取调用 shell 的本地 shell 变量。 另外,如果我在被调用的脚本中放置 "echo $BASH_SUBSHELL" ,它会返回值 "0",表明它不是一个子 shell。但是某些文章则说,当从 shell 中执行 shell 脚本时,会调用一个子 shell。请帮助解答。