![KDE4 ServiceMenus 中是否需要使用引号?](https://linux22.com/image/31696/KDE4%20ServiceMenus%20%E4%B8%AD%E6%98%AF%E5%90%A6%E9%9C%80%E8%A6%81%E4%BD%BF%E7%94%A8%E5%BC%95%E5%8F%B7%EF%BC%9F.png)
Exec=
在kde4 的服务菜单行中,我通常使用:
Exec=command %f
所以我想知道,是否有必要引用%f
,不确定 KDE4 如何解析菜单文件,即
Exec=command "%f"
答案1
我发现了几个线程,人们在行中的参数周围添加了引号Exec=
。我相信如果您正在处理的参数包含空格,您就需要它们。
例如这个帖子的标题是:shell脚本基础知识..如何转发双引号?。
摘抄
我正在尝试将服务菜单条目设置为 kde 我选择的 unrar:s 文件。我将其放入 servicemenu 文件中:
Exec=/usr/bin/extract 1 %U
在 /usr/bin/extract 中我有:
if [ $1 = "1" ]; then unrar e "$2" fi if [ $1 = "2" ]; then unrar x "$2" fi
除非文件名包含空格,否则它工作正常。
因此,除非您要处理以下任一情况,否则您似乎可以不使用引号:
- 包含空格的路径
- 包含空格的文件名
- 包含空格的命令行参数。