为更改其目录的程序创建快捷方式

为更改其目录的程序创建快捷方式

抱歉,如果这看起来是一个愚蠢的问题,但我还是 Linux 新手。 Linux 中是否有相当于 Windows 快捷方式(而不是链接)

我遇到的问题是这样的:

我有一个应用程序位于/home/user/appDirectory/application.exe(它是在 Wine 下运行的 Windows 应用程序)

然后我有一个监视脚本来查找该应用程序以查看它是否正在运行。

例如

application="/home/user/appDirectory/application.exe"

if pgrep -f "$application" > /dev/null 
then
    is_running=1
else
    is_running=0
fi

到目前为止,一切都很好。但我需要在桌面上放置一个“快捷方式”,以便任何人都可以进入并轻松停止/启动应用程序。

如果我创建一个link(并将其放在桌面上)并从该路径启动它,那么路径就会变为/home/user/desktop/link to appDirectory/application.exe并且监视脚本无法看到它。

是否可以创建一个快捷方式,打开时将作为原始位置打开,以便应用程序从原始位置启动?

答案1

由于您的请求似乎仅针对 GUI,我建议您遵循约费尔关于 .desktop 文件的评论。 Archlinux 有一个相当不错的简短的摘要.desktop 文件中有趣的键。一个建议是

[Desktop Entry]
Name=Whatever you want
Type=Application
Path=/home/user
Exec=env WINEPREFIX="<prefix>" wine appDirectory/application.exe

env WINEPREFIX部分可能不是必需的,但如果您有多个前缀或为了更好的衡量标准,请使用它。

将该文件放在<Whatever you want>.desktop$HOME/Desktop 文件夹中,您应该会看到一个可以单击的新图标。这个文件至少会给你appDirectory/application.exegrep 的信息。 Path是命令将被执行的地方。因此,如果需要进行 grep 操作,您可以修改PathExec比例以获取更多路径。Exec因此,通过Path=/和 中的其余部分Exec,您将得到所请求的行为。

然而,我不清楚是否需要这样的 grep。如果它一次只作为一个实例运行,您可以创建一个 PID 文件,并检查 PID 是否存在,如所示这里但根据您的需要进行修改。 这个答案如果您决定获取 PID 文件,您可能也会感兴趣。

相关内容