從我讀過的,bsh中的setenv
和bash中的export
是等價的。但是,我在與這兩者合作時發現了一些奇怪的問題。csh中「setenv」的範圍與bash中的「導出」相對
當我打開膩子並開始鍵入:
setenv TEMP yes
echo $TEMP //this give me "yes"
然後我去抨擊,並鍵入
echo $TEMP //this give me "yes" as well
但是,如果我以相反的順序做,它不會給相同的結果。特別是,當我去第一bash和鍵入
export TEMP=no
echo $TEMP //this give me "no"
然後我回去CSH並鍵入
echo $TEMP // this give me "Undefined Variable"
難道不應該給我「不」呢?我錯過了什麼嗎?
謝謝!
你是什麼意思「然後我回到csh」?你到底輸入什麼「回到csh」? – rici
csh是我的登錄shell,因此當我在bash中輸入「exit」時,它會返回到csh。 –
沒錯。當你導出一個變量時,它會被導出到子項,但不會被導出到父項。當你輸入「exit」時,所有的變量消失。 – rici