У меня есть bash script, активированный crontab и работающий в фоновом режиме. Я хотел бы добавить к нему возможность отправлять уведомления во время выполнения. В моем рабочем столе KDE 4 есть система уведомлений, в которой выходят немодальные сообщения из панели лотков, и это было бы идеально для моих нужд. Поэтому я искал способ генерации этих уведомлений из сценариев bash, но я почти не знаю о платформе KDE, и поэтому я застрял. Может ли кто-нибудь указать мне на решение?
Активация уведомлений KDE 4 из bash скриптов
Ответ 1
kdialog
можно использовать пассивное всплывающее окно.
kdialog --passivepopup <text> <timeout>
Пример:
kdialog --passivepopup 'This is a notification' 5
Ответ 2
Вы также можете использовать notify-send
(в системах на базе Debian установите пакет libnotify-bin
):
notify-send -i 'dialog-information' 'Summary' '<b><font color=red>Message body.'
Насколько я знаю, это должно работать на нескольких оконных менеджерах (таких как KDE и Gnome).
Ответ 3
kdialog --passivepopup 'message including html' timeout
- это опция для KDE, где тайм-аут не требуется. вы можете настроить это даже с добавлением заголовка (--title
) и т.д. → видеть kdialog --help
с одной стороны, стоит упомянуть, что kdialog был установлен на моей системе openSuSE KDE4, тогда как notify-send не установлен здесь.
с другой стороны, преимущество уведомления-отправки заключается в том, что вы можете использовать его в разных средах рабочего стола.
Ответ 4
Подтвердите, что notify-send работает с XFCE4 (Монетный двор на основе Debian), кроме <b><font color=red>
не работает для меня. По какой-то причине текст текста сообщения был темно-серым (практически неразборчивым), поэтому я оставил этот html, и заголовок ( "Сводка" ) и текст тела выглядят белыми.
Что круто, так это то, что вы можете установить абсолютный путь к значку, который вы предпочитаете -
например -i '~/myapps/foobarapp/icons/64x64/64x64.png'