我有一个由crontab激活并在后台运行的bash脚本。我想为它添加在执行过程中发送通知的功能。我的KDE 4桌面拥有一种时尚的通知系统,可以从托盘栏弹出非模态消息,这对我的需求来说非常完美。因此,我正在寻找一种从bash脚本生成这些通知的方法,但我几乎没有关于KDE平台的知识,所以我陷入了困境。是否有人可以指向一个解决方案?
我有一个由crontab激活并在后台运行的bash脚本。我想为它添加在执行过程中发送通知的功能。我的KDE 4桌面拥有一种时尚的通知系统,可以从托盘栏弹出非模态消息,这对我的需求来说非常完美。因此,我正在寻找一种从bash脚本生成这些通知的方法,但我几乎没有关于KDE平台的知识,所以我陷入了困境。是否有人可以指向一个解决方案?
kdialog
的被动弹出选项可以使用。
kdialog --passivepopup <text> <timeout>
示例:
kdialog --passivepopup 'This is a notification' 5
你也可以使用notify-send
(在基于Debian的系统上,安装libnotify-bin
软件包):
notify-send -i 'dialog-information' 'Summary' '<b><font color=red>Message body.'
据我所知,这应该适用于多个窗口管理器(如KDE和Gnome)。notify-send
,但没有 kdialog。这似乎不是一种常态,因为 kdialog 是 kdebase 的一部分,但显然有些系统安装了 libnotify(dolphin 的可选依赖项),但没有 kdialog。 - JepZkdialog --passivepopup 'message including html' timeout
在KDE中有一个名为kdialog的选项,其中超时是不必要的。你可以通过添加标题(--title
)等来调整此设置 -> 参见 kdialog --help
。
一方面值得一提的是,在我的openSuSE KDE4系统上安装了kdialog,而notify-send在此处未安装。
另一方面,notify-send的优点是可以在不同的桌面环境中使用。
确认 notify-send 在 XFCE4(基于 Debian 的 Mint)中可以正常工作,除了 <b><font color=red>
对我无效。由于某种原因,它使消息正文变成深灰色(几乎无法辨认),因此我将该 HTML 略去,标题(“摘要”)和正文都显示为白色。
很酷的是,你可以将偏好的图标的绝对路径放在这里 - 例如:-i '~/myapps/foobarapp/icons/64x64/64x64.png'