debian.org / О Debian Где взять Debian Поддержка Уголок разработчика Новости Wiki

Автор Тема: bash не инициализируются масивы  (Прочитано 1402 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн starlayt

  • Активный пользователь
  • **
  • Topic Author
  • Сообщений: 99
    • мой код
test=( 1 2 3 4 5 )
ругается на скобку, типа неожиданная

test[0]=1
test[1]=2
выводит значения каждого элемента и пишет not found

С другими способами такая же ***. В консоли работает, в скриптах - нет. Что за ****?!

*прочтите правила форума, пункт 3.1 , qupl
« Последнее редактирование: 20 Май 2014, 15:42:51 от qupl »
 

yura_n

  • Гость
Re: bash не инициализируются масивы
« Ответ #1 : 20 Май 2014, 17:04:07 »
ругается на скобку, типа неожиданная
У вас пробелы лишние. После первой скобки и перед второй.
 

Оффлайн starlayt

  • Активный пользователь
  • **
  • Topic Author
  • Сообщений: 99
    • мой код
Re: bash не инициализируются масивы
« Ответ #2 : 20 Май 2014, 20:40:33 »
без них он пишет тоже самое
 

yura_n

  • Гость
Re: bash не инициализируются масивы
« Ответ #3 : 20 Май 2014, 20:43:40 »
без них он пишет тоже самое
У меня не пишет. Выложите скрипт целиком.
 

Оффлайн ZEN

  • Местный житель
  • ***
  • Сообщений: 217
Re: bash не инициализируются масивы
« Ответ #4 : 20 Май 2014, 21:27:18 »
Возможно старая версия bash или используется dash вместо bash...

zen@devel:~$ dash
$ a=( 1 2 3 )
dash: 1: Syntax error: "(" unexpected
$
zen@devel:~$ a=( 1 2 3 )
zen@devel:~$ echo ${a[0]}
1
zen@devel:~$
бог создал труд и обезьяну
чтоб получился человек
а вот пингвина он не трогал
тот сразу вышел хорошо
 

Оффлайн starlayt

  • Активный пользователь
  • **
  • Topic Author
  • Сообщений: 99
    • мой код
Re: bash не инициализируются масивы
« Ответ #5 : 22 Май 2014, 08:03:21 »
ZEN, у меня тоже в консоли работает. А именно в скрипте - нет.
yura_n, да вот хоть этот, из примера, не пашет.
test=(1 2 3)
echo ${test[0]}
 

Оффлайн ogost

  • Главный модератор
  • Ветеран
  • *****
  • Сообщений: 2864
  • Linux Registered User #547151
Re: bash не инициализируются масивы
« Ответ #6 : 22 Май 2014, 12:23:14 »
вопрос глупый, но shabang добавили? то бишь #!/bin/bash в начало скрипта?

yura_n

  • Гость
Re: bash не инициализируются масивы
« Ответ #7 : 22 Май 2014, 16:52:30 »
yura_n, да вот хоть этот, из примера, не пашет.
Все работает:
yura@Vega ~/test $ ls
test.sh
yura@Vega ~/test $ cat test.sh
#!/bin/bash
test=(1 2 3)
echo ${test[0]}

yura@Vega ~/test $ ./test.sh
1
 

Оффлайн starlayt

  • Активный пользователь
  • **
  • Topic Author
  • Сообщений: 99
    • мой код
Re: bash не инициализируются масивы
« Ответ #8 : 23 Май 2014, 11:11:30 »
ogost, да, добавлен
yura_n, спасибо, я понял в чем ошибка!
alex@Alex:~$ ~/test.sh
1
alex@Alex:~$ sh ~/test.sh
/home/alex/test.sh: 2: /home/alex/test.sh: Syntax error: "(" unexpected
Вот оказывается в чем дело было. Как уже выше говорили, я оказывается dash вместо bash использовал.
 

Русскоязычное сообщество Debian GNU/Linux

Re: bash не инициализируются масивы
« Ответ #8 : 23 Май 2014, 11:11:30 »


Теги:
 

арифметика с временем на bash [РЕШЕНО]

Автор A_STAS

Ответов: 8
Просмотров: 6047
Последний ответ 02 Апрель 2013, 21:47:06
от A_STAS
Создание меню на bash

Автор letnab

Ответов: 18
Просмотров: 3931
Последний ответ 14 Сентябрь 2014, 13:23:47
от letnab
bash script - ошибка перехода в каталог с тильдой

Автор sunjob

Ответов: 18
Просмотров: 2264
Последний ответ 27 Октябрь 2015, 21:43:47
от vic5710
Bash скрипт замена одного слова

Автор Racer

Ответов: 2
Просмотров: 900
Последний ответ 14 Декабрь 2016, 23:59:21
от }{ronoTrigger
bash скрипт для бесконечного парсинга лога

Автор zCirill

Ответов: 7
Просмотров: 3629
Последний ответ 12 Ноябрь 2013, 12:26:32
от zCirill