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


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: помогите пожалуйста разобраться с bash-скриптом  (Прочитано 1353 раз)

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

Оффлайн Katashi

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Мне понадобилось ставить под Linuxом 50 пакетов. С начало ставил просто вписывая каждый пакет в командную строку, но потом все поднадоело. вспомнил про bash-скрипты, полазив по нету нашел скрипт установки драйвера принтера, и взял его за основу т.к. с скриптами знаком только поверхностно, нужно было просто от чего-то отталкиваться.
Первая версия скрипта у меня вообще не запустилась, хотя могу и ошибаться после запуска не вывел ни чего на терминал. По этому я решил что не работает, хотя все должно быть просто.
#!/bin/bash -x
echo -e "Установка кодеков и нужных приложений. Продолжить? Y/n"
read flag
case "$flag" in
    y|Y) echo "Начало установки"
             echo "==========Установка Gdebi и Midnight Commander ============="
             dpkg -i gdebic.deb
             dpkg -i gdebi.deb
             dpkg -i mc.deb
             echo "==========Установка приложений первой очереди============="
             dpkg -i pervoe/1.deb
             dpkg -i pervoe/2.deb
             dpkg -i pervoe/3.deb
             dpkg -i pervoe/4.deb
             dpkg -i pervoe/5.deb
             dpkg -i pervoe/6.deb
             dpkg -i pervoe/7.deb
             dpkg -i pervoe/8.deb
             dpkg -i pervoe/9.deb
             dpkg -i pervoe/10.deb
             dpkg -i pervoe/11.deb
             dpkg -i pervoe/12.deb
             dpkg -i pervoe/13.deb
             echo "==========Установка приложений второй очереди============="
             dpkg -i vtoroe/1.deb
             dpkg -i vtoroe/2.deb
             dpkg -i vtoroe/3.deb
             dpkg -i vtoroe/4.deb
             dpkg -i vtoroe/5.deb
             dpkg -i vtoroe/6.deb
             dpkg -i vtoroe/7.deb
             dpkg -i vtoroe/8.deb
             dpkg -i vtoroe/9.deb
             dpkg -i vtoroe/10.deb
             dpkg -i vtoroe/11.deb
             dpkg -i vtoroe/12.deb
             dpkg -i vtoroe/13.deb
             dpkg -i vtoroe/14.deb
             dpkg -i vtoroe/15.deb
             dpkg -i vtoroe/16.deb
             dpkg -i vtoroe/17.deb
             dpkg -i vtoroe/18.deb
             dpkg -i vtoroe/19.deb
             dpkg -i vtoroe/20.deb
             dpkg -i vtoroe/21.deb
             dpkg -i vtoroe/22.deb
             dpkg -i vtoroe/23.deb
             dpkg -i vtoroe/24.deb
             dpkg -i vtoroe/25.deb
             dpkg -i vtoroe/26.deb
             dpkg -i vtoroe/27.deb
             dpkg -i vtoroe/28.deb
             dpkg -i vtoroe/29.deb
             dpkg -i vtoroe/30.deb
             dpkg -i vtoroe/31.deb
             dpkg -i vtoroe/32.deb
    ;;
    n|N) echo "Отмена установки"
    ;;
      *)
    ;;   
esac
Вторая версия с циклом выдала ошибку в 4 строке но я не могу понять что за ошибка:
#!/bin/bash -x
echo -e "Установка коденов и нужных приложений. Продолжить? Y/n"
read flag
case "$flag" in
    y|Y) echo "Начало установки"
             echo "==========Установка Gdebi и Midnight Commander ============="
             dpkg -i gdebic.deb
             dpkg -i gdebi.deb
             dpkg -i mc.deb
             echo "==========Установка приложений первой очереди============="
             for i in $(seq 1 13);
             do
              dpkg -i pervoe/$i.deb
             done
             echo "==========Установка приложений второй очереди============="
            i=1
            while [ $i -lt 32 ]
            do
            dpkg -i vtoroe/$i.deb
            let i=i+1
           done
    ;;
    n|N) echo "Отмена установки"
    ;;
      *)
    ;;   
esac
Помогите пожалуйста разобраться.

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
gnome-terminal -e <скрипт>
Wars ~.o

Оффлайн Katashi

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
gnome-terminal -e <скрипт>
и к чему это если ставится ubuntustudio, а потом софт на него
« Последнее редактирование: 18 Мая 2012, 17:51:07 от xaker26rus »

Оффлайн Сперанский

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 4055
  • Dictum ac factum
    • Просмотр профиля
а текст ошибки то где?

Оффлайн Katashi

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
чуть позже выложу щас не получается.

andrey_p

  • Гость
Кажется, должно просто работать:
dpkg -iR pervoe/
dpkg -iR vtoroe/

Оффлайн Zhook

  • Участник
  • *
  • Сообщений: 182
  • Super Zhook. Xubuntu 12.04; GIMP 2.8; Pentium 4; Geforce 6600.
    • Просмотр профиля
А не будет работать
dpkg -i *.deb
dpkg -i pervoe/*.deb
dpkg -i vtoroe/*.deb

???
Эх!Думаете шесть маленьких лапок на одну большую клавиатуру - это удобно??!

Оффлайн xeon_greg

  • Активист
  • *
  • Сообщений: 981
    • Просмотр профиля
А не будет работать
dpkg -i *.deb
dpkg -i pervoe/*.deb
dpkg -i vtoroe/*.deb

???
именно будет! и не нужно изобретать велосипед

Оффлайн Katashi

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
чуть позже выложу щас не получается.
« Последнее редактирование: 13 Июня 2012, 11:19:42 от xaker26rus »

Оффлайн MEXAHOTABOP

  • Активист
  • *
  • Сообщений: 902
    • Просмотр профиля


всё работает
http://fonline.ru/ заходите

Оффлайн kitaets

  • Активист
  • *
  • Сообщений: 571
  • Аналитик
    • Просмотр профиля
1) Тут же видно, что баш не найден
2) Простейший дебагинг:
- второй строкой добавить:
let "Counter = 0"- а после каждой строки:
echo $Counter ; let "Counter += 1"
Но после исправления баша дебагинг вряд ли понадобится.
«Если ты не наступил на грабли, это не значит, что их нет», – kitaets.

 

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