在我的.bash_profile中,我在$ PATH中添加了一个新路径并将其导出,以便我能够在该目录中运行脚本。
然而,当我删除“#34; export"”这个词时,重新打开终端并启动了一个新shell,我仍然可以运行这些脚本。
我确实理解导出使变量对子进程可见,但正如您所看到的,这里并没有真正有所作为。
有人可以向我解释原因吗? 提前谢谢。
答案 0 :(得分:3)
.bash_profile
来自shell。因此,不需要导出变量以在shell中使用。但是,如果您运行使用exec*p*(3)
的非shell(例如C或Python)程序,则他们无法访问$PATH
的新值,并且可能会失败。