我正在尝试运行一个ruby脚本,它的一些任务需要root访问权限。我知道rvmsudo存在,并且我正在使用它,但是如果我想设置一个环境变量,比如TEST_ENV=1,它就不能工作。
示例:
rvmsudo ruby some_script_which_requires_root_access.rb当我调试脚本并检查ENV散列时,我没有看到TEST_ENV=1变量。我尝试通过以下方式导出var:
export TEST_ENV=1 并将其放入.rvmrc中,对于current_user,放入.bash_profile和.bashrc中,也放入根用户的.profile和.bashrc中,但不起作用。
所以我的问题是,我应该在哪里定义或导出这个TEST_ENV=1,这样当我使用rvmsudo运行脚本时,它就是ENV ruby散列的一部分?
发布于 2011-04-25 01:18:42
您可以尝试使用:
sudo -E ruby some_script_which_requires_root_access.rb它可以保护你的整个环境。所以它应该像预期的那样工作。
发布于 2011-04-25 01:18:25
您是否尝试过简单地编辑rvmsudo脚本并将envvar定义放入其中?
https://stackoverflow.com/questions/5771975
复制相似问题