この単純な bash スクリプトを次のように書いています。
#!/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として実行する必要があることを忘れていました