3 votos

¿Hay alguna forma de hacer que `open -a` pase argumentos de línea de comandos a la aplicación que lanza?

Me gustaría correr OpenSCAD desde la línea de comandos con algunos argumentos.

$ open -a openscad myfile.scad

funciona como espero.

$ open -a openscad --args --help

informa

LSOpenURLsWithRole() failed for the application /Applications/OpenSCAD.app with error -10810.

cuando OpenSCAD no se está ejecutando. Cuando OpenSCAD ya se está ejecutando, entonces open -a openscad --args --help simplemente trae a OpenSCAD al primer plano.

Lo que realmente necesito es que esto funcione:

$ open -a openscad --args -o myfile.stl myfile.scad

que funciona igual que mi ejemplo anterior. ¿Qué debo hacer para lanzar OpenSCAD con argumentos de línea de comandos?

Antes de pulsar enviar reproduje mis preguntas para pegarlas aquí, y encontré una solución que más o menos funciona. Todos estos parecen hacer lo que espero, incluso si OpenSCAD no se está ejecutando.

$ /Applications/OpenSCAD.app/Contents/MacOS/OpenSCAD --help
$ /Applications/OpenSCAD.app/Contents/MacOS/OpenSCAD --args --help
$ /Applications/OpenSCAD.app/Contents/MacOS/OpenSCAD -o ball.stl ball.scad
$ /Applications/OpenSCAD.app/Contents/MacOS/OpenSCAD --args -o ball.stl ball.scad

Sin embargo, ¿hay una manera de hacer open -a ¿pasar argumentos de línea de comandos a la aplicación que lanza?

1voto

Malik hassan Puntos 16

Lo único que consigo que funcione es abrir un archivo. Parece que la App no está hecha para aceptar los args de esta manera.

open -a openscad --args '/path/to/foo.scad'

La aplicación tiene una definición de scripting de Applescript, pero sólo tiene reload definido.

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