我有幾個腳本,其中的第一部分看起來相同。這部分的功能是確定腳本在哪個機器上運行,並相應地設置一些變量。它看起來像這樣:將變量從一個shell腳本導出到另一個腳本
ENV=`echo $LOGNAME | cut -c1-8`
if [ $ENV = "vrt3400b" ]
then
echo "Using TEST specific settings."
NAME_PREFIX="tst"
GROUP_NUMBER=`echo $USER | cut -c4-5`
GROUP_NUMBER_SUFFIX=00`echo $USER | cut -c8-9`
...
elif [ $ENV = "vrp3400a" ]
then
echo "Using PROD specific settings."
NAME_PREFIX="prd"
...
問題是,隨着腳本數量的增加,維護較小更改的開銷會非常耗時。
我提取了上面的部分,並將其放入一個單獨的腳本,然後由所有其他腳本調用。但這些變量當然不會轉發給其他腳本。試過export NAME_PREFIX="tst"
,但它沒有奏效。
任何人都可以給我一個提示,我應該使用哪種方法來解決問題?
我在考慮讓零件識別環境,將屬性寫入文件然後傳遞給其他腳本。但似乎必須有一個更直接的方法。
//麥克
殼牌您使用的? – 2009-11-11 10:03:43