当前位置: 首页 > 面试题库 >

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

田成仁
2023-03-14
问题内容

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

myprogram --folder=$HOME/.special

但是,如果我将其放入.desktop文件的exec行中,它将无法正常工作:

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

$ HOME似乎什么也没解决。


问题答案:

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

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

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



 类似资料:
  • 问题内容: Jenkins参数区分大小写吗?我有一个参数化的构建,需要在构建之前设置一个名为“ build_parameter”的蚂蚁参数。当我尝试访问Jenkins设置的$ {BUILD_NUMBER}时,我得到了为ant参数设置的值。如果构建参数不区分大小写,那么有人可以建议我解决此问题吗?我无法更改构建参数名称,因为必须更改构建脚本(这不是一个选择)。谢谢! 问题答案: 为了回答您的第一个问

  • 问题内容: 我设置了要在我的Python应用程序中访问的环境变量。我如何获得它的价值? 问题答案: 通过访问环境变量 或者,你可以使用以下命令查看所有环境变量的列表: 有时你可能需要查看完整的列表! Windows上的Python默认安装为。如果要在运行python时查找,可以执行以下操作:

  • 是否可以从一个地方访问不同应用。属性的环境变量。实际上,我们正在构建这个软件,我们有不同的应用。不同项目的属性,如用户资产。因此,是否有可能将所有环境变量放在一个外部位置。如果是,将如何访问?

  • 问题内容: 有谁知道如何在Java中访问标准Shell环境的环境变量?我正在使用ProcessBuilder类,并且必须指定正在运行的Shell脚本中使用的特定环境变量,这些变量存在于标准Shell环境中。 访问ProcessBuilder环境不起作用。 问题答案: 您可以通过以下方法获取创建程序时存在的环境变量: http://download.oracle.com/javase/tutoria

  • 问题内容: 我正在尝试设置一个环境变量,然后将其读回以验证它是否确实被设置。 我有以下内容: 但是,它看起来总是空的,这意味着它可能设置不正确。 我的exec命令正确吗?javadocs声明它可以将字符串参数作为命令。 有任何想法吗? 问题答案: 这行不通。当您开始一个新过程时,该过程将收到环境 的副本 。然后,它对环境变量所做的任何更改都将在该副本中进行,并且在任何时候都不会对调用方可见。 您实

  • 只是想知道,我可以在谷歌应用程序引擎中访问环境变量吗?例如,我存储了一封电子邮件和密码,并希望按如下方式访问它: 有什么办法可以做到这一点吗?