Здравствуйте, я тестирую себя, используя руководство по написанию сценариев оболочки Linux столкнулся с этой проблемой, используя массивы оболочки. синтаксис написан с использованием vi
name[0]=chuck
name[1]=samson
echo "hello, ${name[0]}"
echo "hello, ${name[1]}"
и сохраненный файл с использованием : wq
. Я попытался запустить файл с помощью sh svar.sh
но получил
name[0]=chuck is not found
name[1]=samson is not found
Однако при использовании среды кодирования GNU Bash v4.4 скрипты работают правильно Почему это не работает в этой ОС?
Добавьте #! / Bin / bash
shebang.
В старых версиях Ubuntu в качестве оболочки по умолчанию использовался ash
, который не поддерживал массивы.
И запустите сценарий следующим образом:
./svar.sh
Дон '