0 votos

¿cómo ejecutar open -n nombre de la aplicación desde la línea de comandos?

Tengo estas dos líneas que quiero ejecutar desde un archivo script (en Yosemite 10.10.3). Funciona cuando se ejecuta desde la terminal

CX_LICENSE=LS
open -n /Applications/Inspire\ Designer\ 10.0\ GA/Inspire\ Designer.app/

He guardado estas dos líneas en un archivo y lo he llamado ID de ejecución. -rwxr-xr-x@ 1 Administrador personal 89 20 Jul 17:34 runID

Si hago doble clic en runID entonces obtengo una nueva ventana con

Last login: Mon Jul 20 17:22:27 on ttys002
dsa-mac1:~ Administrator$ /Users/Administrator/Desktop/runID ; exit;
: command not foundr/Desktop/runID: line 1: 
/Users/Administrator/Desktop/runID: line 1: -n: command not found
logout

[Process completed]

¿alguna idea de cómo hacer funcionar el runID?

2voto

Madhur Ahuja Puntos 190

Te falta la línea inicial de tu archivo script: el "shebang".

Pon lo siguiente en tu archivo script:

#!/bin/sh
CX\_LICENSE=LS
open -n /Applications/Inspire\\ Designer\\ 10.0\\ GA/Inspire\\ Designer.app/

Esto debería funcionar - el archivo que tenías antes no tenía suficiente información para decirle al sistema operativo cómo para ejecutar su script. Usted quiere ejecutar un conjunto de comandos de shell, por lo que necesita decirle al sistema operativo que es un script de shell, lo que se hace incluyendo la etiqueta #!/bin/sh como la primera línea del script.

Ver esta respuesta en Stack Overflow para más información.

Actualización

Sólo para confirmar, acabo de probar este script y funciona bien:

#!/bin/sh
open -n /Custom\ Applications/MacVim.app

Como ha señalado correctamente @fd0, debes nombrar el script <script>.tool o <script>.command para que se ejecute desde Finder (donde <script> es un nombre significativo para el script).

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X