.Desktop命令行参数传递给exec(类似于shell脚本)

时间:2015-07-03 00:46:57

标签: linux bash shell ubuntu desktop-shortcut

我通常会编写一个这样的shell脚本:

#!/bin/sh
nohup /path/to/myapp -test "$@" &

然后我可以从终端启动这个shell脚本,我给它的任何命令行参数都传递给shell脚本,然后传递给exec行myapp。我正在使用Ubuntu,问题在于shell脚本launced up的图标不是shell文件的图标。它使用myapp的默认图标。这就是为什么我要转移到.desktop,它使启动的应用程序使用.desktop文件的图标。

我已经写了一个.desktop文件:

[Desktop Entry]
Name=My Ro
Type=Application
Comment=Web Application
Exec=/path/to/myapp -test @
Icon=/opt/giteye/icon.xpm
Name[en_US]=My Ro

我在exec行上放了一个@符号,但它没有按预期工作。它没有采用我给.desktop的命令行参数,也没有将它放入exec行。能否帮我把.desktop收到的命令行参数传递给Exec行/

1 个答案:

答案 0 :(得分:2)

您想要什么 - 使用任意参数从终端打开桌面文件 - 不是如何使用.desktop文件。

参数中只允许某些变量,基本上对应于类似桌面的操作:要打开的文件,等等。如果这是您想要的,您可以使用%f之类的代码为文件执行此操作,然后使用UI将文件拖到应用程序上,例如。

配置应用程序的另一种方法是使用桌面操作,它基本上是打开应用程序的枚举方式列表。因此,如果你想要使用一组明确定义的参数,那就可以了。

有关参数代码以及桌面操作如何工作的详细信息,请参阅Desktop Entry specification