为什么没有“sh”的脚本的桌面入口文件会被忽略?

为什么没有“sh”的脚本的桌面入口文件会被忽略?

我有一个简单的桌面条目文件,用于在 Dock 中显示脚本图标:

[Desktop Entry]
Type=Application
Terminal=false
Name=digi2kvm
Comment=Backup NB > KVM
Icon=/usr/share/icons/Yaru/256x256/apps/backups-app.png
Exec=/home/honza/.skripty/mybackup.sh

该脚本由一个 rsync 命令和 zenity 组成,显示进程的总体状态。奇怪的是,它在一个 Ubuntu 19.04 安装上完美运行,但在另一个上却不行。在另一个上,条目从 dock 中消失,直到我把在 Exec 路径之前。但是该脚本没有按预期工作,它省略了 zenity 部分,这对我来说非常重要。它显然在子 shell 中运行,但这不是我需要的。

为什么 gnome 对此如此敏感,以及如何在第二台机器上解决这个问题?

重要的

脚本没有问题,它按预期工作(并且可以执行),问题实际上出在入口文件及其从 dock 中消失。我尝试将其放入两者中,.local/share/applications/usr/share/applications结果仍然相同。我还尝试直接在入口文件中将短脚本用作管道(Exec=rsync...),但它根本不起作用。

  1. Exec=/home/honza/.skripty/mybackup.sh在一台机器上工作正常,图标在 Dock 中显示正常。在第二台机器上,图标消失。
  2. Exec=sh /home/honza/.skripty/mybackup.sh不起作用,但图标重新出现在 Dock 中(在第二台机器上)。

相关内容