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


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Скрипт перезапуска программы  (Прочитано 1297 раз)

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

Оффлайн stixia007

  • Автор темы
  • Участник
  • *
  • Сообщений: 154
    • Просмотр профиля
Скрипт перезапуска программы
« : 04 Июня 2019, 12:21:38 »
Здравствуйте. Первый раз пишу скрипт, если где ошибся поправьте пожалуйста.

Нужно было закрыть программу и запустить её заново.

#!/bin/sh

kill -9 | grep programm

cd /home/...

(./programm &)


Оффлайн SergeyIT

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5583
  • Все по палатам!
    • Просмотр профиля
Re: Скрипт перезапуска программы
« Ответ #1 : 04 Июня 2019, 12:25:35 »
stixia007, если это сервер, может его и запускать как сервер. systemd поизучай.
Извините, я все еще учусь

Оффлайн bezbo

  • Старожил
  • *
  • Сообщений: 1742
    • Просмотр профиля
Re: Скрипт перезапуска программы
« Ответ #2 : 04 Июня 2019, 12:29:40 »

Оффлайн stixia007

  • Автор темы
  • Участник
  • *
  • Сообщений: 154
    • Просмотр профиля
Re: Скрипт перезапуска программы
« Ответ #3 : 04 Июня 2019, 12:33:15 »
stixia007, если это сервер, может его и запускать как сервер. systemd поизучай.
Понял )) видимо слишком по нубски написал. Я мало в этом понимаю нужен был скрипт, вроде написал буду проверять тогда.

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6690
  • 20% Cooler
    • Просмотр профиля
Re: Скрипт перезапуска программы
« Ответ #4 : 04 Июня 2019, 12:35:16 »
Код: (bash) [Выделить]
#!/bin/bash

PD=$(pgrep programm) && kill -9 $PD
/path/to/programm &
disown

🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн stixia007

  • Автор темы
  • Участник
  • *
  • Сообщений: 154
    • Просмотр профиля
Re: Скрипт перезапуска программы
« Ответ #5 : 04 Июня 2019, 12:37:20 »
pr=programm
pgrep $pr | xargs -I {} kill -9 {}
$pr || ./$pr &
Благоадрю. Треть строчка запускать программы. А как скрипт поймёт с какой директории запускать программу? Или я что-то не понимаю ))

Пользователь добавил сообщение 04 Июня 2019, 12:41:25:
#!/bin/bash
 
PD=$(pgrep programm) && kill -9 $PD
/path/to/programm &
disown
Всем спасибо. В общем много ещё изучать нужно для написания скриптов, погнался я куда... :D

ТС, как видно по состоянию на 22/02/2020 потерял интерес к созданной им теме (пометка Решено в теме отсутствует, тема оставлена не закрытой, сообщений в теме давно не было). Тема стародавняя (последнее сообщение в топике: 04/06/2019; последнее сообщение от ТС в топике: 04/06/2019). Модератором раздела принято решение закрыть тему.
--zg_nico
« Последнее редактирование: 22 Февраля 2020, 06:53:46 от zg_nico »

Оффлайн ALiEN

  • Администратор
  • Старожил
  • *
  • Сообщений: 6690
  • 20% Cooler
    • Просмотр профиля
Re: Скрипт перезапуска программы
« Ответ #6 : 04 Июня 2019, 12:45:11 »
🖥 AsRock B550M Pro4 :: AMD Ryzen 5 3600 :: 16 GB DDR4 :: AMD Radeon RX 6600 :: XFCE
💻 ACER 5750G :: Intel Core i5-2450M :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн victor00000

  • Старожил
  • *
  • Сообщений: 15568
  • Глухонемой (Deaf)
    • Просмотр профиля
Re: Скрипт перезапуска программы
« Ответ #7 : 04 Июня 2019, 12:57:58 »
pr=programm
while true
do
pgrep $pr || break
done | xargs -I {} kill -9 {}
$pr &
Wars ~.o

 

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