![在 15.04 中创建启动器项时,文件路径中的引号有什么意义?](https://linux22.com/image/1127434/%E5%9C%A8%2015.04%20%E4%B8%AD%E5%88%9B%E5%BB%BA%E5%90%AF%E5%8A%A8%E5%99%A8%E9%A1%B9%E6%97%B6%EF%BC%8C%E6%96%87%E4%BB%B6%E8%B7%AF%E5%BE%84%E4%B8%AD%E7%9A%84%E5%BC%95%E5%8F%B7%E6%9C%89%E4%BB%80%E4%B9%88%E6%84%8F%E4%B9%89%EF%BC%9F.png)
我正在尝试为 Sublime Text 2 制作一个图标。当我使用以下设置时,出现“启动应用程序时出错”
[Desktop Entry]
Name=Sublime Text
Type=Application
Exec=/home/aortiz49/Application Data/Sublime_Text_2/sublime_text
Terminal=false
Icon=/home/aortiz49/Application Data/Sublime_Text_2/Icon/256x256/sublime_text.png
Comment=Sublime Text 2
NoDisplay=false
Catergories=Development
Name[en]=Sublime
但是,当我将 Exec 路径放在双引号中时,如下所示:
"/home/aortiz49/Application Data/Sublime_Text_2/sublime_text"
该应用程序有效。
但是如果我在图标路径上加上双引号,图标就会消失。
在指定某个路径时,双引号有什么区别?我知道在指定带有空格的路径时会使用它们,但这些路径没有空格。
答案1
但这些路径没有空格。
路径在Application
和之间有一个空格Data
。因此您需要双引号或反斜杠\
:
Exec=/"home/aortiz49/Application Data/Sublime_Text_2/sublime_text"
或者
Exec=/home/aortiz49/Application\ Data/Sublime_Text_2/sublime_text
对于Icon
:
Icon=/home/aortiz49/"Application Data"/Sublime_Text_2/Icon/256x256/sublime_text.png
答案2
与您所想的不同,在文件中.desktop
,有一个空格:
不应该在图标路径中进行转义,因此:
Icon=/home/aortiz49/Application Data/Sublime_Text_2/Icon/256x256/sublime_text.png
可以,但是有一个空格:
应该在该行中进行转义Exec=
,因此:
Exec=/home/aortiz49/Application Data/Sublime_Text_2/sublime_text
不正确。应为:
Exec=/home/aortiz49/"Application Data"/Sublime_Text_2/sublime_text
原因是这条Exec=
线代表一个命令它将把空格后面的内容解释为参数,而该行Icon=
表示一条路径到图标。