Массивы - это простой способ хранить списки без awk и временных файлов. Главное знать базовые приемы.
▪️ Добавление элементов
arr=(one two)
arr+=(three)
arr[5]=six
bash сам раздвигает индексы, дыры допустимы.
▪️ Удаление элементов
unset arr[1]
Элемент удаляется, но индексы не сдвигаются:
echo "${!arr[@]}" # индексы
Удалить весь массив:
unset arr
▪️ Перебор элементов
Правильно:
for item in "${arr[@]}"; do
echo "$item"
done
Неправильно (ломает пробелы):
for item in ${arr[@]}; do
▪️ Перебор с индексами
for i in "${!arr[@]}"; do
echo "$i => ${arr[$i]}"
done
▪️ Размер массива
echo "${#arr[@]}"
BashTex 📱 #bash