我正在使用Ruby 2,我为一些环境变量提供资源并将它们放入〜/ .profile中,然后我在ruby脚本中重新加载.profile,如下所示:
#!/usr/bin/ruby env
`source ~/.profile`
但是我找不到源命令。如何在ruby脚本中重新加载.profile?
我也试过这个:
#!/usr/bin/ruby env
`/bin/bash -c 'source ~/.profile'`
但没有成功。
答案 0 :(得分:0)
简而言之 - 你不能。
源环境变量仅在子流程中有效,不会影响父流程。
唯一的方法是使用bash -c "source ~/.profile; env"
返回环境变量,然后在脚本中解析并设置它们。