2010-09-13 119 views
0

我對shell(本例中爲csh)腳本缺乏經驗,但被要求編輯一個腳本。我被要求添加一個配置文件,以便更容易編輯幾個特定的​​變量。我認爲這很愚蠢,因爲這是一個腳本,讀取文件和讀取文件都會有點愚蠢,所以我儘管可以創建一個不同的腳本來設置變量。Csh運行腳本配置文件和變量

父腳本

#!/bin/csh 
... 
... 

./set_vars 

echo $aVar 

和我set_vars腳本看起來像

#!/bin/csh 

setenv aVar "400" 
echo $aVar 

但AVAR我鼻涕父腳本中定義。

我的問題變成了......我如何讓子腳本設置父腳本可以使用的變量,還是有更好的方法來讓某個人可以設置變量的配置文件。

這似乎是一個愚蠢的方式做到這一點,但我可以告訴大家,這並不最好的方式要求任何文件IO,仍然有一個簡潔的文件進行編輯瓦爾。

回答

1

你應該在執行「set_vars」腳本其父母的背景。在C-shell中,與「源」命令實現這一目標:

 
#!/bin/csh 
... 
source set_vars 
... 
echo $aVar
+0

我是可以肯定我試過了,但是給了另一個與你的建議去和它的工作!所以非常感謝你,我不知道我以前做了什麼dopey的事情。僅僅設置像這樣的變量而不是使用配置文本文件是否有意義? – 2010-09-13 14:31:01