Есть безобидный код
imageList=()
ls -al | while read line
do
echo "$line"
imageList+=("alias")
imageList+=($line)
done
echo ${#imageList[@]}
который в конце цикла возвращает пустой массив
при этом строка
echo "$line"
честно отрисовывает вывод на каждой итерации.
Можно предположить что я где то портачу с присвоением в массив, но
следуюший код
imageList=()
line="line"
imageList+=("alias")
imageList+=($line)
imageList+=("alias")
imageList+=($line)
imageList+=("alias")
imageList+=($line)
echo ${#imageList[@]}
отрабатывает так как и задумывал
может кто прояснить ситуацию
PS. ответ
peakle помог. Скрипт работает. Но остались вопросы почему с
for работает а с
while нет