我在嘗試通過bash
廚師資源加載我的.bashrc
文件時遇到了一些麻煩。我.bashrc
位於/sh/.bashrc
這是我的資源代碼:bash資源似乎沒有加載我的.bashrc文件
bash "Source .bashrc" do
cwd "/home/ameya"
user "ameya"
code "source /sh/.bashrc"
action :run
end
我.bashrc
只有下列位:
export ME=ameya
所以,當我在終端上鍵入echo $ME
我希望看到它打印出來ameya
但沒有打印出來。我設置的方式有什麼問題?在此先感謝
廚師採購你的文件開始的shell與啓動時自己的交互式shell採購文件有什麼關係?環境變量是進程本地的 - 只要發生'source'命令的shell退出,該命令不再有任何作用(除了任何啓動和遺留的子進程外)。 –
我想基本上爲用戶設置ENV變量,我看到的很多示例顯示您可以通過'bash'資源中的'environment'屬性設置環境變量,或者通過獲取我所屬的文件自從將值傳遞給''environment''屬性以來,嘗試做的工作很麻煩 –
'bash'資源中的'environment'屬性不會長時間更改環境變量,或者以適用於以後的交互式shell的方式更改 - - 它只設置它們,以便您告訴Chef運行的單個調用。 –