如何访问 .desktop 文件执行行中的环境变量?



我的程序需要一个环境变量作为其参数之一:

myprogram --folder=$HOME/.special

然而,如果我把它放在.desktop文件的exec行中,它就不起作用了:

Exec=myprogram --folder=$HOME/.special

$HOME似乎什么都没有。

默认情况下,环境变量似乎不会被所有实现解析,但您可以改为exec-sh,它将解析传递的环境变量。请注意,桌面规范还要求您用反斜杠转义=和$字符。所以你想要:

Exec=sh -c "myprogram --folder=$HOME/.special"

有关需要转义的字符的完整列表,请参阅规范

最新更新