Конфигурационный файл сценария запуска Csh и переменные

Я довольно неопытен со сценариями оболочки (в данном случае csh), но меня попросили отредактировать один. Меня попросили добавить файл конфигурации, чтобы было намного проще редактировать несколько конкретных переменных. Я подумал, что это глупо, потому что это скрипт, и чтение в файл и из него будет немного глупым, поэтому я мог бы просто создать другой скрипт, который бы устанавливал переменные.

Родительский скрипт

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

./set_vars

echo $aVar

и мой скрипт set_vars выглядит примерно так

#!/bin/csh

setenv aVar "400"
echo $aVar

Но я не определен в родительском скрипте.

у меня возникает вопрос... как сделать так, чтобы дочерний скрипт установил переменные, которые родительский скрипт может использовать, или есть лучший способ иметь конфигурационный файл, где кто-то может устанавливать переменные.

Это кажется глупым способом сделать это, но лучший способ, который я могу сказать, это то, что не требует никакого ввода-вывода файла и все еще имеет краткий файл для редактирования переменных.

1 ответ

Решение

Вы должны выполнить скрипт "set_vars" в контексте его родителя. В C-shell вы достигаете этого с помощью команды "source":

#! / Bin/ CSH...
источник set_vars
...
echo $aVar
Другие вопросы по тегам