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


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

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

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

Оффлайн victorponomarev

  • Автор темы
  • Любитель
  • *
  • Сообщений: 68
    • Просмотр профиля
Хочу, чтобы в 22:00 на компьютере отрубались все мессенджеры-почты и я как бы отключался от внешнего мира для спокойного доделования дел на день и подготовки ко сну. На android-телефоне я недавно поставил Llama и уже ощутил всю прелесть того, что в 22:00 телефон автоматически переходит в "режим полёта", а в 06:00 снова возвращается к нормальному профилю. На linux-компьютере я решил сделать то же самое, только с помощью crontab.

Посему хочу получить совет от бывалых, как должны выглядеть:

1. Скрипт на закрытие одновременно thunderbird, skype, pidgin.

2. Скрипт на запуск одновременно thunderbird, skype, pidgin.

То есть подразумеваю, что можно одним скриптом одновременно закрыть три программы, другим скриптом одновременно запустить 3 программы. Если нельзя этого сделать, то, наверное, придётся делать 6 скриптов: по 3 на закрытие и запуск.

P. S. Компьютер у меня включён постоянно.
« Последнее редактирование: 16 Февраля 2015, 07:44:45 от victorponomarev »

Оффлайн Phlya

  • Старожил
  • *
  • Сообщений: 2219
  • Фля, Цыганский барон, Винни Пух
    • Просмотр профиля
Re: Скрипты на закрытие и открытие программ
« Ответ #1 : 15 Февраля 2015, 15:46:36 »
Запуск банально, тупо перечисляете команды запуска по очереди
Закрытие... Надо смотреть, какой командой каждое из приложений закрывается. Если не боитесь потерять в них данные какие-нибудь, то тупо pkill -9 skype и т.п.
Ubuntu 14.04 (Unity), MSI GE40

Оффлайн victorponomarev

  • Автор темы
  • Любитель
  • *
  • Сообщений: 68
    • Просмотр профиля
Re: Скрипты на закрытие и открытие программ
« Ответ #2 : 15 Февраля 2015, 15:56:17 »
Если не боитесь потерять в них данные какие-нибудь, то тупо pkill -9 skype и т.п.

Хорошо, модернизируем скрипт. Нужно, чтобы при запуске скрипта закрытия программ производилось следующее:
1. Выскакивало предупреждение о том, что через 5 минут асечки закроются.
2. Через 5 минут после предупреждения асечки закрывались.

Или лучше сделать два скрипта: один — предупреждалка, второй — закрывалка?

Как сделать предупреждалку?

Оффлайн Haron Prime

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 11312
  • Нетолерантный социопат
    • Просмотр профиля
Re: Скрипты на закрытие и открытие программ
« Ответ #3 : 15 Февраля 2015, 16:19:15 »
Цитировать
Как сделать предупреждалку?
notify-send bla-bla-blahttps://help.ubuntu.ru/wiki/notify-osd
http://habrahabr.ru/post/47892/
« Последнее редактирование: 15 Февраля 2015, 16:21:07 от Haron Prime »

Оффлайн victorponomarev

  • Автор темы
  • Любитель
  • *
  • Сообщений: 68
    • Просмотр профиля
Re: Скрипты на закрытие и открытие программ
« Ответ #4 : 15 Февраля 2015, 16:23:34 »
notify-send bla-bla-bla

Хм, то есть, если у меня XFCE, надо юзать xfce4-notifyd? Но это будет штука, которую легко пропустить, на пару секунд отведя взгляд от монитора.

Может быть, есть способ вывести диалоговое окно на экран? Нужно-то просто сообщение-предупреждение с клавишей "Ok".

Оффлайн Haron Prime

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 11312
  • Нетолерантный социопат
    • Просмотр профиля
Re: Скрипты на закрытие и открытие программ
« Ответ #5 : 15 Февраля 2015, 16:27:03 »
victorponomarev,
а кто мешает задать время отображения?
или вам трудно ввести в терминале notify-send --help, чтобы посмотреть все возможные опции?
уж простите великодушно, но я за Вас этого делать не буду

Оффлайн victorponomarev

  • Автор темы
  • Любитель
  • *
  • Сообщений: 68
    • Просмотр профиля
Re: Скрипты на закрытие и открытие программ
« Ответ #6 : 15 Февраля 2015, 16:34:19 »
victorponomarev,
а кто мешает задать время отображения?
уж простите великодушно, но я за Вас этого делать не буду

Прощаю. Поди, можно ещё и настроить скрытие уведомлений по нажатию на них мышкой?

Оффлайн Azure

  • Модератор раздела
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
Re: Скрипты на закрытие и открытие программ
« Ответ #7 : 15 Февраля 2015, 16:34:38 »
Самое простое использовать zenity или dialog.
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

Оффлайн victorponomarev

  • Автор темы
  • Любитель
  • *
  • Сообщений: 68
    • Просмотр профиля
Re: Скрипты на закрытие и открытие программ
« Ответ #8 : 15 Февраля 2015, 16:35:14 »
Самое простое использовать zenity или dialog.
Во! Спасибо!

Оффлайн Phlya

  • Старожил
  • *
  • Сообщений: 2219
  • Фля, Цыганский барон, Винни Пух
    • Просмотр профиля
Re: Скрипты на закрытие и открытие программ
« Ответ #9 : 15 Февраля 2015, 16:36:13 »
Прощаю. Поди, можно ещё и настроить скрытие уведомлений по нажатию на них мышкой?
Нет, стандартные убунтовские уведомления такого не позволяют.
Ubuntu 14.04 (Unity), MSI GE40

Оффлайн Haron Prime

  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 11312
  • Нетолерантный социопат
    • Просмотр профиля
Re: Скрипты на закрытие и открытие программ
« Ответ #10 : 15 Февраля 2015, 16:48:56 »
Нет, стандартные убунтовские уведомления такого не позволяют.
http://compizomania.blogspot.com/2012/06/notifyosd-ubuntu-1204.html
Цитировать
Close Bubble on Click - активация данного пункта, предоставляет возможность закрытия уведомления в один клик на нём в любом месте.

Оффлайн Phlya

  • Старожил
  • *
  • Сообщений: 2219
  • Фля, Цыганский барон, Винни Пух
    • Просмотр профиля
Re: Скрипты на закрытие и открытие программ
« Ответ #11 : 15 Февраля 2015, 17:02:45 »
Haron Prime,
Цитировать
Модифицированные уведомления NotifyOSD
Стандартные это не позволяют.
Ubuntu 14.04 (Unity), MSI GE40

Оффлайн victorponomarev

  • Автор темы
  • Любитель
  • *
  • Сообщений: 68
    • Просмотр профиля
Re: Скрипты на закрытие и открытие программ
« Ответ #12 : 15 Февраля 2015, 17:05:57 »
В общем, для моей задачи (закрытия программ Thunderbird, Pidgin и Skype в 22:00 (и предупреждения об этом в 21:55) и их запуска в 06:00) было сделано и проверено следующее:
  • Создан скрипт для выведения предупреждения о закрытии программ.
  • Создан скрипт для закрытия программ.
  • Создан скрипт для запуска программ.
  • Создан crontab-файл с расписанием выполнения скриптов.

Скрипт для выведения предупреждения о закрытии программ (warning-close.sh):
#!/usr/bin/env bash
zenity --warning --title="Завершение работы приложений" \
                 --text="В 22:00 завершат работу почтовый клиент, жабер-клиент и скайп"

Скрипт для закрытия программ (th-pi-sk-stop.sh):
#!/usr/bin/env bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
HOME=/home/USER
/sbin/start-stop-daemon --stop --name thunderbird & /sbin/start-stop-daemon --stop --name pidgin & /sbin/start-stop-daemon --stop --name skype

Скрипт для запуска программ (th-pi-sk-start.sh):
#!/usr/bin/env bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
HOME=/home/USER
thunderbird & pidgin & skype &

Crontab-файл (22_00-06_00):
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
HOME=/home/USER
DISPLAY=:0.0

55 21 * * * /home/USER/путь/до/файла/./warning-close.sh

0 22 * * * /home/USER/путь/до/файла/./th-pi-sk-stop.sh

0 6 * * * /home/USER/путь/до/файла/./th-pi-sk-start.sh

Для тех, кто, как и я, всё это делает впервые, привожу порядок действий:
  • Создать в удобном месте файл warning-close.sh, напичкать его соответствующим содержимым, представленным выше, сделать исполняемым.
  • Создать в удобном месте файл th-pi-sk-stop.sh, напичкать его соответствующим содержимым, представленным выше, сделать исполняемым.
  • Создать в удобном месте файл th-pi-sk-start.sh, напичкать его соответствующим содержимым, представленным выше, сделать исполняемым.
  • Создать в удобном месте crontab-файл "22_00-06_00" (простой текстовый файл, не скрипт), напичкать его соответствующим содержимым, представленным выше.
  • Ввести в терминале команду:
Цитировать
crontab /home/USER/путь/до/файла/22_00-06_00

Имена файлов и пути выбирайте самостоятельно, но не забывайте вносить соответствующие правки в скрипты с путями файлов. Также внимательно смотрите на строчку в скриптах:
Цитировать
HOME=/home/USER
Меняйте её в зависимости от адреса вашей домашней директории.
« Последнее редактирование: 16 Февраля 2015, 07:47:22 от victorponomarev »

 

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