Мне нужно перебрать массив и расширить массив во время перебора. Как мне это сделать в BASH?
Например:
req="a b c d"
read -a MODULES <<<$req
for MODULE_NAME in "${MODULES[@]}"; do
echo $MODULE_NAME
if something-happens-only-one-time; then
MODULES+=( "e" )
fi
done
Я хочу получить следующий вывод:
a
b
c
d
e
Редактировать:
Следующий код работает на данный момент:
i=0
while true; do
MODULE_NAME="${MODULES[$i]}"
echo ${MODULE_NAME}
if something-happens-only-one-time; then
MODULES+=( "e" )
fi
i=$((i+1))
num_of_modules=${#MODULES[@]}
if (("$i" >= "$num_of_modules")) ; then
break
fi
done