1 votos

Shell de comandos de Applescript

Este ha sido me vuelve loca. Tengo un script que es un ejecutable dentro de /usr/local/bin/, el cual funciona perfectamente en la Terminal, pero yo soy incapaz de Applescript para llamar a:

RunShell("estc R505")

on RunShell(oscript)
    do shell script oscript
end RunShell

no hacer una cosa. He tratado de dar la ubicación real /usr/local/bin/estcen su lugar, y llamando en bash con bash o sh... no funciona nada. Debe devolver una cadena de texto, y funciona a la perfección en la terminal.

2voto

user3439894 Puntos 5883

En el Editor de secuencias de Comandos, si se ejecuta el siguiente AppleScript comando:

do shell script "echo $PATH"

Verás cómo el PATH se define a la do shell script comando:

"/usr/bin:/bin:/usr/sbin:/sbin"

Debe incluir el nombre completo de la ruta a cualquier ejecutable que no está en la PATH, que se muestra arriba, en orden para que funcione en un AppleScript do shell script comando.


Otra opción es agregar un export PATH comando a la do shell script comando, por ejemplo:

set exportPath to "export PATH=$PATH:/usr/local/bin:/opt/X11/bin:"

Y, en su caso, usarla como, por ejemplo:

RunShell("estc R505")

on RunShell(oscript)
    set exportPath to "export PATH=$PATH:/usr/local/bin:/opt/X11/bin:; "
    do shell script exportPath & oscript
end RunShell

Obviamente ajustar el ... parte de export PATH=$PATH:... para reflejar su real PATH que no está incluido en el valor predeterminado PATH pasa a la do shell script comando como se muestra más arriba.

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