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


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Перезапуск упавшего firefox  (Прочитано 1013 раз)

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

Оффлайн velial666

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Перезапуск упавшего firefox
« : 25 Апреля 2015, 10:49:14 »
Вопрос по автоматизации на Ubuntu.
Пытаюсь по гайду написать аналог бат файла на случай падения firefox и запуска его с ключом.
Получилось что то типа:

#!/bin/bash
 ret=$(ps aux|grep [f]irefox|wc -l)
 if [ "$ret" -eq 0 ]
 then {
 firefox imacros://run/?m=mail.js
sleep 10m
 exit 1
 }
 Fi

 Но запрос на наличие работающего браузера не работает или условия некорректны-ничего не происходит.
 Кто-нибудь может подсказать в чем причина?
 И как запустить скрипт с бесконечным циклом?
War. War never changes… ©

Оффлайн Pit Sullivan

  • Любитель
  • *
  • Сообщений: 64
    • Просмотр профиля
Re: Перезапуск упавшего firefox
« Ответ #1 : 25 Апреля 2015, 16:09:06 »
velial666, действительно, условие, которое проверяется в заголовке условной конструкции if, не совсем верно. Видите ли, команда grep возвращает результат, состоящий как минимум из одной строки, если процесс в настоящий момент не запущен, и как минимум из двух строк, если процесс запущен. Вот один из вариантов реализации подобной проверки:
#!/bin/bash

  while :
  do
    ret=$(ps aux | grep firefox | wc -l)
 
    if [ "$ret" -lt "2" ]
    then
      echo "Firefox is not running!"
      firefox
      sleep 10s
    else
      echo "Firefox is running."
      sleep 10s
    fi
  done
Полезные ссылки:
(Нажмите, чтобы показать/скрыть)

Оффлайн velial666

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Re: Перезапуск упавшего firefox
« Ответ #2 : 25 Апреля 2015, 16:59:11 »
Спасибо  :)
War. War never changes… ©

 

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