¿Escribir scripts de bash para cambiar la configuración de Mac OS / OSX?

0

No estoy seguro de si estoy haciendo esta pregunta correctamente, pero estoy intentando escribir un script para cambiar algunas configuraciones en Mac OS Sierra, similar a este script que establece que el reloj en la barra de menú aparezca como analógico:

killall Dock;
defauls write com.apple.menuextra.clock IsAnalog -bool true;
killall SystemUIServer;

En su lugar, me gustaría seleccionar una distribución de teclado diferente que he creado usando elementos Karabiner, que también aparece en la barra de menú, y puedo cambiarla con el mouse.

Mi pregunta es básicamente, ¿cómo puedo averiguar qué comandos poner en mi script para realizar cambios como este? ¿Hay alguna forma de grabar comandos que se ejecutan cuando se realizan acciones con el mouse, y luego simplemente pegar esos comandos en una secuencia de comandos y alias a algún atajo? Cualquier ayuda sobre cómo llegar a ser competente para escribir guiones como esta sería útil.

    
pregunta 14.08.2017 - 01:00

1 respuesta

1

Para las secuencias de comandos que interactúan directamente con macOS, es mucho mejor escribir AppleScript sobre shell. AppleScript es el lenguaje de script propietario de Apple que contiene muchas formas de interactuar con el sistema operativo. Además, AppleScript fue diseñado para ser un lenguaje legible muy humano.

Se puede encontrar una gran cantidad de documentación y tutoriales para AppleScript a través de una búsqueda rápida en Google. Aquí hay algunas páginas web de Apple para comenzar:

Introducción a AppleScript
Fundamentos de AppleScript

Para escribir AppleScripts, abra el Editor de secuencias de comandos, ubicado en Aplicaciones > Utilidades

Un script de ejemplo para alternar el modo oscuro de macOS Sierra sería:

tell application "System Events"
tell appearance preferences
    if dark mode is false then
        set dark mode to true
    else
        set dark mode to false
    end if
end tell
end tell
    
respondido por el Aaron Sutton 17.08.2017 - 00:07

Lea otras preguntas en las etiquetas