Я пишу этот простой bash script следующим образом.
#!/bin/bash
array=( /home/abc/Downloads/something.bat /home/abc/Downloads/smb.conf )
echo ${array[@]}
Я ожидал, что он напечатает все имена файлов в массиве. Но я получаю эту ошибку:
test.sh: 3: Syntax error: "(" unexpected
Если я изменил объявление массива на
array = {/home/abc/Downloads/something.bat /home/abc/Downloads/smb.conf}
эта ошибка исчезает, но у меня все еще есть новые ошибки.
test.sh: 3: array: not found
test.sh: 4: Bad substitution
Как я могу решить эту проблему? Это мой первый раз в программировании оболочки, поэтому я не могу самостоятельно решить проблемы.
ПОСТАНОВИЛИ:
Я выполнял его как sh test.sh, но я забыл, что должен был выполнить его как bash test.sh