Функция Bash только с переменными - PullRequest
0 голосов
/ 14 декабря 2018

У меня есть две функции, которые хранят только переменные.Пример:

Function datanode1(){
    homedirectory = "/path/to/file"
    ConfigDirectory = "/path/to/file"
    user = "john"
    max_open_Files = 262114
}

datanode2 точно такой же, только разные пути к файлам.

Я хотел бы сделать что-то вроде этого:

if [ "$a1" == "all" ]; then
    for i in [datanode2, datanode1] do
        *execute Script*
    done
fi

Возможно ли это?Как функции действуют как массивы?

1 Ответ

0 голосов
/ 14 декабря 2018

Если у вас есть функции с именами datanode2 и datanode1, и вы хотите выполнить их в цикле, вы можете написать так:

for fun in datanode2 datanode1; do
    "$fun"
done

Кстати, определение функции в вашем примере имеет несколькоошибка синтаксиса.Это должно быть больше так:

datanode1() {
    homedirectory="/path/to/file"
    ConfigDirectory="/path/to/file"
    user="john"
    max_open_Files=262114
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...