我正在尝试编写一个脚本,允许我在我的环境中设置一堆环境变量。 我以前做的是:
source ./script
但是现在我希望我的脚本在PATH变量中,所以我可以从我想要的任何地方调用它。
但是这样称呼它:
script
将打开一个新shell并在新shell中设置变量,一旦脚本执行完毕,我就会丢失所有内容。
所以我想知道如何做到这一点。
答案 0 :(得分:4)
也许你应该使用alias
。
假设您的环境变量位于文件/path/to/stuff/my_env
中,只需添加别名
alias my_env="source /path/to/stuff/my_env"
然后你只需发出my_env
就可以了!
除非你的脚本启动一个新的bash
命令,否则无法在脚本中完成你想要实现的目标,但这有点尴尬!
答案 1 :(得分:2)
您可以创建一个源脚本的函数:
do_it () {
source /your/script
}
将其放入.bashrc
,您可以发出
do_it