我有一些shell代碼我需要調試,所以我的代碼拋售其環境到一個文件採購ENV輸出
env > env.txt
,並與我的測試腳本,我想它來源,test.sh:
. ./env.txt
echo $EXAMPLE
echo $EXAMPLE2
env.txt的內容是:
EXAMPLE=sh /hello/command.sh
EXAMPLE2=/just/some/path
但是,包膜不把圍繞其價值,這往往會導致報價是起訴$例如,我得到這個錯誤
test.sh:/hello/command.sh:找不到
那麼清楚它正試圖去運行它設置變量。
你覺得這個問題最快的解決方法是什麼?
嗯,'set> env.txt'設置了所有的全部內容,但是這對當前的env.txt沒有任何幫助...... – Wrikken 2013-03-05 23:05:25
請注意'env> env.txt'只會記錄* environment *變量,但'。 。/ env.txt'會設置Bash變量*而不導出它們。你確定這是你想要的嗎? – ruakh 2013-03-05 23:10:17
在某些shell中,'set> env.txt'會將標準輸出從該點重定向到'env.txt'。爲便於攜帶,使用'(set)> env.txt'更安全。 – Idelic 2013-03-06 00:05:59