2011-01-19 100 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