如何从shell脚本导出变量?
我创建了1.sh:
#!/bin/sh -e
export TEST=$TEST:/home/centos/
现在,当我执行sh 1.sh或sudo bash 1.sh时,它会成功执行。
但是现在我已经通过.sh文件导出了TEST,我试图echo $TEST
但它没有给出任何东西。
当我跑步时,我已经完成了所有解决方案 它实际上只调用子进程并在该环境中导出。但是我需要在Parent shell中导出变量。
但是当我在.bashrc和源.bashrc中编写相同的导出行时,它可以工作。但是为了使ruby安装自动化,我不想使用source命令。 要使用rbenv安装ruby,我遵循https://www.digitalocean.com/community/tutorials/how-to-install-ruby-on-rails-with-rbenv-on-centos-7
答案 0 :(得分:4)
你必须使用source 1.sh
来源它们,因为当你调用sh时,你会启动一个新的shell,它会在它完成之后退出。为什么不想使用它?有原因吗?