${array_variable[@]}
do
str="$i"
oldstr="PRE_"
newstr=""
result=$(echo $str | sed "s/$oldstr/$newstr/")
echo $result >> file.txt
done
На mac все работает корректно, а на ubuntu выдается ошибку 12: Bad substitution
12 строка это for i in ${array_variable[@]}
В чем может бытЬ проблема?
Мб из-за разницы zsh/bash?
На mac пробовал в обоих запустить скрипт — работает корректно.
Смотри как раскрывается массив и сколько там элементов (и есть ли там они вообще), потому что в синтаксисе все норм
Да, я добавил принт echo и там есть нужные значения
А если докинуть #!/bin/bash в начало файла?
Shellcheck?
И да, у тебя скорее всего запускается в sh а не баше, небось шеьанг кривой
Обсуждают сегодня