問題將是使用sudo運行命令並進入根(sudo -i)並運行命令
運行這兩個命令的區別究竟是什麼。
作爲根,我做了一個自定義env。可變
export A="abcdef"
然後在根shell
sudo -i
echo $A
回報
abcdef (as expected)
然而,當我回到正常用戶和運行
sudo -i echo $A
返回空行。
所以當你運行sudo echo $ A命令時,它是否使用普通用戶的環境變量和shell?
有沒有辦法讓abcdef即使我運行sudo echo $ A?
感謝
編輯1
當你說你已經做出了變量A爲根,我假設你的意思是你在根目錄的.profile或類似的東西,這樣做。 - >
EDIT 2
這是非常合情合理的 但遇到了一些麻煩(是的!)。
當我做
sudo -i 'echo $A'
我得到
-bash:回聲$ A:沒有找到命令。
然而,當我做
su -c 'echo $A'
它還給
abcdef
什麼是錯的
sudo -i 'echo $A'
命令?
先生,你不知道有多少你的評論已幫助可憐的老人! :P +10 – 2013-12-11 12:59:53