Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: GRUB2 и скрипты BASH  (Прочитано 2284 раз)

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

Оффлайн MrGalaxy

  • Автор темы
  • Любитель
  • *
  • Сообщений: 85
  • Вечный студент
    • Просмотр профиля
GRUB2 и скрипты BASH
« : 27 Октября 2014, 13:43:52 »
Здравствуйте!
Подскажите, пожалуйста, синтаксис команды сложения значений числовых переменных в файле grub.cfg.
Вставляю такой код:
i=0
while [ $i -lt 5 ];
do
echo ''
i=$[$i+1];
done
, а он не работает. Выдаётся ошибка - не воспринимается оператор арифметического сложения. Остальные операторы работают. В Убунтовском терминале всё выполняется корректно.
« Последнее редактирование: 27 Октября 2014, 15:20:31 от MrGalaxy »

Оффлайн Антоний

  • Новичок
  • *
  • Сообщений: 27
  • Мастерство не пропьешь. Я пробовал
    • Просмотр профиля
Re: GRUB2 и скрипты BASH
« Ответ #1 : 27 Октября 2014, 15:10:19 »
MrGalaxy,
i=$[$i+1]

Оффлайн MrGalaxy

  • Автор темы
  • Любитель
  • *
  • Сообщений: 85
  • Вечный студент
    • Просмотр профиля
Re: GRUB2 и скрипты BASH
« Ответ #2 : 27 Октября 2014, 15:21:25 »
MrGalaxy,
i=$[$i+1]
Да, разумеется, прошу прощения за описку. Именно так и пробовал. Не работает...

Оффлайн Azure

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
Re: GRUB2 и скрипты BASH
« Ответ #3 : 27 Октября 2014, 15:31:57 »
  • i++
  • i+=1
  • i=$(($i+1))
  • let i=i+1
  • i=$(expr $i + 1)
В Linux можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн MrGalaxy

  • Автор темы
  • Любитель
  • *
  • Сообщений: 85
  • Вечный студент
    • Просмотр профиля
Re: GRUB2 и скрипты BASH
« Ответ #4 : 27 Октября 2014, 15:39:16 »
  • i++
  • i+=1
  • i=$(($i+1))
  • let i=i+1
  • i=$(expr $i + 1)
Пробовал 3 и 4 варианты - не работает. Ещё пробовал
set i=$[$i+1]Ща попробую остальные предложенные Вами варианты.

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: GRUB2 и скрипты BASH
« Ответ #5 : 27 Октября 2014, 15:41:49 »
Цитировать
i=$[$i+1];
i=$[i+1];
Wars ~.o

Оффлайн MrGalaxy

  • Автор темы
  • Любитель
  • *
  • Сообщений: 85
  • Вечный студент
    • Просмотр профиля
Re: GRUB2 и скрипты BASH
« Ответ #6 : 27 Октября 2014, 16:13:03 »
Никак не работает.
И вот так тоже пробовал:
i=`expr $i + 1`В Баше работает, а в ГРУБе нет... :(

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: GRUB2 и скрипты BASH
« Ответ #7 : 27 Октября 2014, 16:33:38 »
MrGalaxy,
grub не баш, другая язык.
Wars ~.o

Оффлайн Azure

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
Re: GRUB2 и скрипты BASH
« Ответ #8 : 27 Октября 2014, 18:13:05 »
Может проще цикл поменять?
Код: (bash) [Выделить]
for i in 0 1 2 3 4 5
do
  echo ''
done

В консоли груба (попасть из меню груба можно нажав е) наберите help - покажет список доступных программ.
« Последнее редактирование: 27 Октября 2014, 18:19:23 от Azure »
В Linux можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн Антоний

  • Новичок
  • *
  • Сообщений: 27
  • Мастерство не пропьешь. Я пробовал
    • Просмотр профиля
Re: GRUB2 и скрипты BASH
« Ответ #9 : 27 Октября 2014, 18:34:55 »
Может проще цикл поменять?
Код: (bash) [Выделить]
for i in 0 1 2 3 4 5
do
  echo ''
done
Тогда уж
for i in $(seq 0 4)А вообще мысль дельная

Оффлайн Azure

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
Re: GRUB2 и скрипты BASH
« Ответ #10 : 27 Октября 2014, 19:05:29 »
Антоний,
(Нажмите, чтобы показать/скрыть)
В Linux можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн MrGalaxy

  • Автор темы
  • Любитель
  • *
  • Сообщений: 85
  • Вечный студент
    • Просмотр профиля
Re: GRUB2 и скрипты BASH
« Ответ #11 : 27 Октября 2014, 19:43:48 »
Может проще цикл поменять?
Код: (bash) [Выделить]
for i in 0 1 2 3 4 5
do
  echo ''
done
Так работает, но я хотел без такой конструкции обойтись.


В консоли груба (попасть из меню груба можно нажав е) наберите help - покажет список доступных программ.
Можно как-то вывести содержимое help постанично? А то всё чохом выводится и на экране видно только последнюю страницу.


Тогда уж
for i in $(seq 0 4)А вообще мысль дельная
Так не работает, опять "syntax error $".

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: GRUB2 и скрипты BASH
« Ответ #12 : 27 Октября 2014, 19:48:12 »
MrGalaxy,
зачем груб?
Wars ~.o

Оффлайн MrGalaxy

  • Автор темы
  • Любитель
  • *
  • Сообщений: 85
  • Вечный студент
    • Просмотр профиля
Re: GRUB2 и скрипты BASH
« Ответ #13 : 27 Октября 2014, 20:09:11 »
MrGalaxy,
зачем груб?

Вы будете смеяться, но я решил перед загрузкой ОС вывести приветственное сообщение по центру экрана. ??? :)
Думал, раз-два-скрипт-готово! Вот в лоб не получается.
Ерундой, конечно, маюсь, но вдруг что серьёзное когда понадобится. Захотелось разобраться. :-\
Не берите в голову, арифметика, скорее всего, действительно не работает.

Оффлайн ArcFi

  • Старожил
  • *
  • Сообщений: 15189
    • Просмотр профиля
    • aetera.net

 

Страница сгенерирована за 0.024 секунд. Запросов: 21.