我正在尝试在Chef配方中设置env变量,以便在配方运行后,我可以echo $VAR1
bash 'set_env_var' do
code <<-EOH
echo export VAR1="https://#{node['fqdn']}" >> /etc/profile
source /etc/profile
EOH
not_if "grep -q VAR1="https://#{node['fqdn']}" >> /etc/profile"
end
如果有更好的方法可以告诉我。
答案 0 :(得分:0)
这不是Unix支持的功能。如果您的发行版的默认shell RC文件支持它,那么最接近的就是写/etc/profile.d
之类的内容,但两者都不会对当前shell产生任何影响(您需要启动一个新的)并且不会涵盖所有执行方案。对于你想要解决的任何问题,环境变量可能是错误的答案。