необходимо написать скрипт с ипользованием массива, например:
#!/bin/bash
bash --version
echo $TERM
declare -a Array1
declare -a Array2[3]
Array1[1]=2
Array2[2]=3
Array3[1]=4
echo ${Array2[2]}
но при запуске этого скрипта вылазят ошибки, вот полный вывод:
$ sh 1.sh
GNU bash, version 3.2.25(1)-release (i486-pc-linux-gnu)
Copyright (C) 2005 Free Software Foundation, Inc.
xterm
1.sh: 4: declare: not found
1.sh: 5: declare: not found
1.sh: 6: Array1[1]=2: not found
1.sh: 7: Array2[2]=3: not found
1.sh: 8: Array3[1]=4: not found
1.sh: 9: Syntax error: Bad substitution
При этом если самому вызвать консоль (gnome-terminal) и каждую строчку набрать/вставить то все работает:
$ bash --version
GNU bash, version 3.2.25(1)-release (i486-pc-linux-gnu)
Copyright (C) 2005 Free Software Foundation, Inc.
$ echo $TERM
xterm
$ declare -a Array1
$ declare -a Array2[3]
$ Array1[1]=2
$ Array2[2]=3
$ Array3[1]=4
$ echo ${Array2[2]}
3
т.е эта проблема связана только с запуском скрипта из файла. Как это можно исправить?