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


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

Автор Тема: Как выполнить последовательное исполнение команд в скрипте?  (Прочитано 9269 раз)

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

Оффлайн Самир

  • Автор темы
  • Активист
  • *
  • Сообщений: 670
  • root@localhost:~#
    • Просмотр профиля
Как выполнить последовательное исполнение команд в скрипте? Меня интересует именно исполнение скрипта по двойному клику по нему... Через терминал запускаю, все нормально работает, и исполняются все три команды последовательно. А если запускаю скрипт с содержащимися в нём командами ниже
#!/bin/bash
konsole -noclose -e sudo add-apt-repository -y ppa:videolan/stable-daily && sudo apt-get update && sudo apt-get install -y vlc
то исполняется только первая команда и всё. Мне нужно запускать скрипты именно по двойному клику и с исполнением в терминале. На убунте привык уже и были готовые исполняемые файлы, а в кедах никак не разберусь :-\
« Последнее редактирование: 19 Октября 2013, 00:44:01 от Самир »
Arch Linux x86_64 ; KDE 4.14

Оффлайн Spect

  • Старожил
  • *
  • Сообщений: 1173
    • Просмотр профиля
А зачем объединять в скрипте? Просто вынести в 3 строки, 1 строка = 1 команда?
Ubuntu 16.04 LTS [x86-64]/i3-2100T/2*4G/1T HDD/Intel HD 2000
Hatsan Escort Aimguard Combo 12/76, 7+1

Оффлайн Самир

  • Автор темы
  • Активист
  • *
  • Сообщений: 670
  • root@localhost:~#
    • Просмотр профиля
Spect,
тогда откроются 3 окна Konsole, что имхо не очень удобно. Хотелось бы чтобы все 3 команды выполнялись в одном окне терминала...

Пользователь решил продолжить мысль 19 Октября 2013, 00:20:57:
без konsole -noclose -e скрипты не запускаются, а если к каждой команде приписывать konsole -noclose -e то нужно постоянно пасс вводить, потому что открывается новое окно, а это не удобно
« Последнее редактирование: 19 Октября 2013, 00:20:57 от Самир »
Arch Linux x86_64 ; KDE 4.14

Оффлайн Spect

  • Старожил
  • *
  • Сообщений: 1173
    • Просмотр профиля
O_O  кде
А через точку с запятой?
Ubuntu 16.04 LTS [x86-64]/i3-2100T/2*4G/1T HDD/Intel HD 2000
Hatsan Escort Aimguard Combo 12/76, 7+1

Оффлайн Самир

  • Автор темы
  • Активист
  • *
  • Сообщений: 670
  • root@localhost:~#
    • Просмотр профиля
Spect,
то же самое, но если запустить скрипт через терминал, то естьsh ./script.shто все работает как надо, но так блин не удобно(
« Последнее редактирование: 19 Октября 2013, 00:40:26 от Самир »
Arch Linux x86_64 ; KDE 4.14

Оффлайн Самир

  • Автор темы
  • Активист
  • *
  • Сообщений: 670
  • root@localhost:~#
    • Просмотр профиля
Вообщем проблема решилась созданием двух скриптов: run.sh и soft.sh (ну например)

run.sh
#!/bin/bash
konsole -noclose -e sh soft.sh
тем самым запустится скрипт soft.sh и выполнятся команды внутри него в одном окне терминала. Костыль, но все же может кому и пригодится :)
Arch Linux x86_64 ; KDE 4.14

Оффлайн Raiden

  • Новичок
  • *
  • Сообщений: 39
    • Просмотр профиля
Внесу небольшую поправку, т.к. в  первом посте есть && и слово последовательно. Последовательно - это через ; или по команде на строку. А && - это исполнение если предыдущая команда завершилась верно. Как бы более чем просто последовательно, ваш КО.

 

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