1 votos

Error de script de Automator -212

Estoy en un macOS Intel Catalina y estoy tratando de crear una automatización usando AppleScript para ejecutar un comando en la terminal zsh. El comando es para establecer nuevas configuraciones predeterminadas para mi perfil de bash y funciona perfectamente cuando está aislado, pero si lo pongo en el script del automator y hago que el acceso directo sea visible en el dock, arroja un error.

El error dice: "La acción "Ejecutar AppleScript" encontró un error: "La operación no se pudo completar. (error de com.apple.Automator -212.)"

y mi script es

on run {input, parameters}
    tell application "Terminal"
        activate
        do script "source ~/.zprofile"
        do script "clear"
    end tell
end run

No hay ninguna solución publicada en internet que yo sepa.

0voto

gogogadgetinternet Puntos 151

¿Has intentado ejecutar ese script directamente desde el Editor de Scripts? (Probablemente sea la mejor manera de depurar (¡y escribir!) AppleScript.)

Yo lo hice, y se detiene en la primera línea con un mensaje de error (diferente).

Pero después de remover el {input, parameters}, se ejecuta bien. (Supongo que la documentación de donde obtuviste eso estaba indicando que podías usar ya sea input o parameters - aunque de hecho se toma como un identificador, así que cualquier palabra única servirá. Como es opcional, lo más sencillo es omitirlo completamente.)

Entonces ese parece ser el problema inmediato.

Sin embargo, ese no es el único problema con el script. El comando activate trae la aplicación Terminal al frente, junto con cualquier ventana que ya esté abierta. Pero cada do script abre una ventana nueva con una nueva terminal, y ejecuta el comando ahí - no afecta a ninguna ventana que ya estuviera abierta (lo cual supongo es tu intención).

Para hacer eso, necesitas decirle que use una ventana existente. La manera más sencilla parece ser do script "......" en window 0, que utiliza la pestaña actual en la ventana más hacia adelante.

(Hay otras variaciones que te permitirían seleccionar otras pestañas y ventanas. Consulta la documentación de Terminal para más información; la manera más sencilla es ejecutar ‘Archivo Abrir Diccionario…’ desde el Editor de Scripts, y seleccionar ‘Terminal.app’ en el diálogo resultante.)

(Nota: esto fue probado en macOS 12 Monterey, pero espero que aplique a algunas versiones anteriores y posteriores también.)

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