Como codifico um hífen no comando open de um terminal Bash?

2

Estou tentando escrever um script pequeno que lança Beyond Compare quando faço um diff de svn. Eu trabalhei até agora:

open -a /Applications/Beyond\ Compare.app "$6" "$7"

Para obter a funcionalidade completa, preciso adicionar argumentos com um hífen (-, traço, sinal de menos)

open -a /Applications/Beyond\ Compare.app "$6" "$7" -title1="$3" -title2="$5" -readonly

Mas quando faço isso, o comando open interpreta os hífens como sinalizadores para si mesmo e sai com:

open: invalid option -- i
usage: ...

Eu tentei "citar" todo o comando ou - escapar das opções. O que devo fazer para obter a funcionalidade extra?

    
por Luc Bloom 24.04.2015 / 10:48

1 resposta

0

Veja a página de manual aberta:

 --args
     All remaining arguments are passed to the opened application in the argv parameter to
     main(). These arguments are not opened or interpreted by the open tool.

Então, seu comando ficaria assim:

open -a /Applications/Beyond\ Compare.app "$6" "$7" --args -title1="$3" -title2="$5" -readonly
    
por 24.04.2015 / 11:01