2011-01-19 101 views
0

我有一個shell腳本,我想從外部文件中讀取參數,通過FTP來獲取文件:如何分析從參數文件變量A K shell腳本

parameters.txt:

FTP_SERVER=ftpserer.foo.org 
FTP_USER_NAME=user 
FTP_USER_PASSWORD=pass 
FTP_SOURCE_DIRECTORY="/data/secondary/" 
FTP_FILE_NAME="core.lst" 

我找不到如何將這些變量讀入我的FTP_GET.sh腳本中,我嘗試過使用read,但它只是回顯了變量,並沒有根據需要存儲它們。

回答

1

假設'K殼牌是Korn Shell程序,而且你願意相信文件的內容,那麼你可以使用點命令「.」:

. parameters.txt 

這將閱讀和解釋當前shell中的文件。該功能自從它首次發佈以來一直在Bourne shell中,並且也位於Korn Shell和Bash中。 C Shell相當於source,Bash也將它視爲點的同義詞。

如果你不信任的文件,然後你可以用read讀取的值,驗證這些值,然後用eval設置變量:

while read line 
do 
    # Check - which is HARD! 
    eval $line 
done 
+0

非常感謝,就像一個魅力!我正在嘗試使用。方法,但沒有空間。 – 2011-01-19 04:33:50