Я пытаюсь создать своего рода набор свойств в ksh.
Подумал, что самый простой способ сделать это - использовать массивы, но синтаксис меня убивает.
Я хочу, чтобы
- Создание массива произвольного размера в файле конфигурации с именем и свойством.
- Выполните итерацию для каждого элемента в этом списке и получите это свойство.
Я полагаю, что я хотел бы сделать что-то вроде
MONITORINGSYS={
SYS1={NAME="GENERATOR" MONITORFUNC="getGeneratorStatus"}
SYS2={NAME="COOLER" MONITORFUNC="getCoolerStatus"}
}
Позже я смогу сделать что-то вроде:
for CURSYS in $MONITORINGSYS
do
CSYSNAME=$CURSYS.NAME
CSYSFUNC=$CURSYS.MONITORFUNC
REPORT="$REPORT\n$CSYSNAME"
CSYSSTATUS=CSYSFUNC $(date)
REPORT="$REPORT\t$CSYSSTATUS"
done
echo $REPORT
Ну, это не настоящее программирование, ноЯ думаю, вы поняли ..
Как мне это сделать?
[РЕДАКТИРОВАТЬ]
Я не имею в виду, я хочу использовать ассоциативныймассивы.Я только поставил этот способ, чтобы сделать мой вопрос более понятным ... Т.е. это не было бы проблемой, если бы цикл был примерно таким:
for CURSYS in $MONITORINGSYS
do
CSYSNAME=${CURSYS[0]}
CSYSFUNC=${CURSYS[1]}
REPORT="$REPORT\n$CSYSNAME"
CSYSSTATUS=CSYSFUNC $(date)
REPORT="$REPORT\t$CSYSSTATUS"
done
echo $REPORT
То же самое относится к файлу конфигурации .. Я просто смотрюдля синтаксиса, который делает его минимально читаемым.
cheers