Bash 不保留当前会话中的导出变量和别名。你知道如何开始调查这个吗?

Bash does not keep the export variables and aliases in current session. Do you know how to start to investigate this?

几天来,我一直在开发一些脚本,我依赖于这样一个事实,即当我执行“source file.sh”时,所有导出并带有别名的内容都将保留在当前会话中。所以,通过这种方式,我可以开发一套脚本来构建和部署我的应用程序。

现在,我开始遇到问题,在我执行“bash setup.sh”之后,我的会话中什么也没有。我尝试了“bash -i setup.sh”,但什么也没有。

可能是什么问题?我无法将它们添加到 .bashrc 或 .zshrc 中,因为它们是我 运行 部署的一部分,并且当会话消失时,我希望所有这些变量也消失。我确实在 bash shell 和 zsh shell 中尝试过这个,但在这两个中我都有同样的问题..

请大家帮忙指点一下,看看哪里出了问题。

现在系统上唯一不同的是,我更新了 oh-my-zsh,因为它今天要求更新。如果这是问题所在,我该如何卸载它?

提前致谢!

在使用 source 之前尝试 set -o allexport