a=(Новости Дети Наука)
b=(1 2 3)
echo "a = ${a[@]}"
echo "b = ${b[@]}"
echo "Changing..."
for i in $(seq 0 ${#a[@]}); do
a[${i}]=${b[${i}]}
done
echo "a = ${a[@]}"
a = Новости Дети Наука
b = 1 2 3
Changing...
a = 1 2 3
Обалдеть. А что такое «a[@]»? Это конечно не мое дело, но по-моему это немного не та задача. В твоем коде, если я правильно понял, просто первое слово заменяется на 1, второе на 2 и т.п. А в условии предлагалось все вхождения «Новости» заменить на 1, не зависимо от порядка.