Есть такой скрипт:
#!/bin/bash
adr="192.168.99.103"
i=1
per=0
while [ $i -lt 11 ]
do
ping -c 1 $adr &> /dev/null
perr$i=$?
per=$[ $per + $perr$i ]
i=$[ $i + 1 ]
done
echo $per
При исполнении выдаёт что:
perr1=1: команда не найдена perr2=1: команда не найдена perr3=1: команда не найдена perr4=1: команда не найдена perr5=1: команда не найдена
и т. д.
Это ругань на строку: per$i=$?
Как то раньше писал скрипт по очистке пронумерованных каталогов - например dir1, dir2, dir3
так вот в цикле при работе с каталогами подстановка dir$i работала нормально, а вот с переменными выдаёт ошибки.
Мсходя из справочника по bash испробовал множество вариантов: perr${i}, {perr${i}} и т. д. но безрезультатно.
Подскажите пожалуйста как организовать изменение порядкового номера переменной.
В моём случае можно проблему решить проще - не менять порядковый номер, а просто взять переменную perr и всё, тогда всё работает. Но всё таки хотелось бы узнать как организовывается изменение порядкового номера переменной.
Прошу строго не ругать. За помощь заранее благодарен!