如何从 .desktop 应用启动器发送 gnome 桌面通知?

如何从 .desktop 应用启动器发送 gnome 桌面通知?

我正在 gnome .desktop 文件中运行一个 shell 脚本,以将我的磁盘备份到外部磁盘,以 root 身份运行:

Exec:gksu /home/nhiton/bin/sync_home_to_alpha.bash

但是,我似乎无法做任何事情来了解脚本是否成功退出。我尝试了以下操作:

  1. 在脚本末尾添加一个睡眠,这样我就有时间查看结果,然后立即退出
  2. 我尝试运行不同的脚本来从通知发送中分离出 gksu 部分:

Exec:/home/nhilton/bin/test_sync.bash

# test_sync.bash
gksu sync_home_to_alpha.bash

if [ $? -eq 0 ]; then
    notify-send "SUCCESS"
else
    notify-send "FAILURE"
fi

似乎没有任何组合能让我发出脚本的退出状态信号。

帮助!

答案1

执行以下一行:

Exec=bash -c "/home/nhilton/bin/test_sync.bash && notify-send Success || notify-send Fail"

重点是if&&结构是 shell 语法,因此你实际上需要一个 shell 来理解它们。因此使用bash -c

注意单引号和双引号,并仔细检查 .desktop 文件中的其他参数

相关内容