Как разобрать переменные из файла параметров в скрипте K Shell - PullRequest
0 голосов
/ 19 января 2011

У меня есть сценарий оболочки. Я хочу прочитать параметры из внешнего файла, чтобы получить файлы по FTP:

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 Ответ

1 голос
/ 19 января 2011

Предполагая, что K Shell - это Korn Shell, и что вы готовы доверять содержимому файла, вы можете использовать команду точки '.':

. parameters.txt

Это будет читать и интерпретировать файл в текущей оболочке. Эта функция была в оболочке Bourne с момента ее первого выпуска, а также в Korn Shell и Bash. Эквивалент C Shell - source, который Bash также рассматривает как синоним точки.

Если вы не доверяете файлу, вы можете прочитать значения с помощью read, проверить значения, а затем использовать eval для установки переменных:

 while read line
 do
     # Check - which is HARD!
     eval $line
 done
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...