源代码和Linux脚本的./执行之间的区别
|
csh:
set a=0
echo \"a is $a\"
当我做./my_script.csh输出是:
a is
当我做源my_script.csh输出是:
a is 0
为什么会这样呢。据我所知./执行使用新的外壳。
没有找到相关结果
已邀请:
2 个回复
粳饶瓢部
请记住,一旦您将脚本源到当前的shell, 它所有的全局变量都存在,直到未设置或退出当前shell。 您可能要启动一个新的shell,提供脚本,结束退出shell以执行有效的测试。 我不知道您遇到的问题的背景,但是您可能希望导出一些关键变量,以使其在每个子流程中都有其副本。
嘘伪