我将在这里做出一个疯狂的猜测,但是这些功能似乎不起作用的正常原因不是因为它们不起作用,而是因为用户并不真正了解环境变量的工作原理。例如,如果我有此程序:
int main(int argc, char **argv){ putenv("SomeVariable=Somevalue"); return 0;}然后我从外壳程序运行它,它不会修改外壳程序的环境-
子进程无法做到这一点。这就是为什么内置可修改环境的shell命令的原因,以及为什么需要
source一个脚本,该脚本包含要添加到Shell中的变量设置,而不是简单地运行它。



