¿Cómo puedo ejecutar una aplicación con argumentos de línea de comandos en Mac OS?
¿Existe alguna forma sencilla de añadir argumentos de línea de comandos a una aplicación en un Mac? Por ejemplo, para ejecutar Opera en modo quiosco o para utilizar un perfil diferente en Firefox, puedo escribir
$ /Applications/Opera.app/Contents/MacOS/Opera -kioskmode
$ /Applications/Firefox.app/Contents/MacOS/firefox -P profilename -no-remote
En Windows puedo añadir los argumentos a las propiedades del acceso directo, pero como los Mac no utilizan el acceso directo en sí y ejecutan las aplicaciones directamente, esto no es posible.
He descubierto que lanzar las aplicaciones a través de bash o Applescript funciona parcialmente:
# Bash
#!/bin/sh
/Applications/Firefox.app/Contents/MacOS/firefox -P default -no-remote
# Applescript
do shell script "exec /Applications/Opera.app/Contents/MacOS/Opera -kioskmode"
Puedo hacerlas ejecutables y asignarles un icono y todo funciona de maravilla, excepto que cuando ejecuto cualquiera de estos pseudoprogramas, una ventana de terminal o un icono de Applescript permanece abierto mientras la aplicación esté abierta. Presumiblemente, usar el comando open de Applescript evitaría esto, pero como no estoy ejecutando la aplicación tal y como está empaquetada (sólo /Applications/Firefox), no funciona.
Entonces, ¿hay alguna forma mejor de ejecutar aplicaciones con argumentos de línea de comandos? Si no es así, ¿hay alguna forma de evitar que una sesión de terminal persistente o un icono de Applescript permanezcan abiertos mientras la aplicación está abierta?
Edición
Según una página Mozilla Wiki , lo mejor es utilizar un script para ejecutar la aplicación con argumentos. Añadiendo un & al final del script se mata la ventana de Terminal persistente. La única molestia ahora es que abre una ventana de Terminal muerta y desconectada (que es mejor que la persistente, pero aún así…)
#!/bin/sh
/Applications/Firefox.app/Contents/MacOS/firefox -P default -no-remote &