É necessário usar aspas nos ServiceMenus do KDE4?

É necessário usar aspas nos ServiceMenus do KDE4?

Na Exec=linha do menu de serviço do kde4, normalmente uso:

Exec=command %f

Então eu me pergunto se é necessário citar o %f, não tenho certeza de como o KDE4 analisa o arquivo do menu, ou seja

Exec=command "%f"

Responder1

Encontrei vários tópicos onde as pessoas incluíram aspas em torno dos argumentos nas Exec=linhas. Acredito que você precise deles se os argumentos com os quais está lidando incluírem espaços.

Por exemplo, este tópico intitulado:Noções básicas de script de shell .. como encaminhar aspas duplas ??.

excerto

Estou tentando fazer com que a entrada do servicemenu seja kde quais arquivos unrar:s eu seleciono. Coloquei isso no arquivo servicemenu:

Exec=/usr/bin/extract 1 %U

e em /usr/bin/extract eu tenho:

if [ $1 = "1" ]; then
    unrar e "$2"
fi  
if [ $1 = "2" ]; then
    unrar x "$2"
fi   

Funciona bem, exceto se o nome do arquivo incluir espaços.

Portanto, parece que você pode evitar o uso de aspas, a menos que esteja lidando com:

  • caminhos que incluem espaços
  • nomes de arquivos que incluem espaços
  • argumentos de linha de comando que incluem espaços.

informação relacionada