¿Cómo usar Terminal para enviar pulsaciones de teclas?

12

¿Hay alguna manera para que Terminal simule presionar varias teclas a la vez? Por ejemplo, Shift + Ctrl + R?

Estoy sshingresando a OS X desde un cliente de Windows (PuTTY) y me pregunto si necesito configurar el cliente o si hay una forma nativa para que OS X emule estos comandos en el extremo receptor.

usuario84019
fuente
Se trata de usar la terminal para enviar atajos de teclado. Específicamente, necesito enviar ctrl + opt + shift + e. Necesito hacerlo sin AppleScript, ya que es desde una computadora con Windows, usando lo que supongo que es algún tipo de simulador de Terminal o SSH de cmd.
user84019
AppleScript funciona sobre SSH usando osascript. La siguiente respuesta es totalmente funcional a través de SSH, siempre que haya una GUI en la máquina OS X
grg

Respuestas:

8

Puede usar AppleScript en la Terminal:

osascript -e 'tell application "System Events" to keystroke "r" using {control down, shift down}'
grg
fuente
Cuando intento eso, ¿acabo de obtener una nueva línea con ">"?
user84019
¿Es específico del programa? Por ejemplo, si quiero escribir "E" en TextEdit, ¿escribiría "osascript -e 'tell application" System Events "para presionar la tecla" e "usando {shift down}'"?
user84019
2
Bien, estoy tratando de escribir ctrl + opt + shift + e, y tengo "osascript -e 'tell application" System Events "para presionar la tecla" e "usando {control abajo, shift abajo, opción abajo}'" pero me dice "48:55: error de sintaxis: un identificador no puede ir después de este" "". (-2740) "
user84019
Las pulsaciones de teclas se ingresan exactamente como serían si se escribieran manualmente; No son específicos de cada aplicación. Si desea ingresar una pulsación de tecla dentro de una aplicación, use 'osascript -e' diga a la aplicación "AppName" para activar '. Esto iniciará la aplicación si aún no está abierta y también la pondrá en primer plano (es decir, su nombre se muestra en la barra de menú). Luego puede usar el código @grg provisto en su respuesta anterior.
Peter Schorn
3

La herramienta de clic de clic es bastante impresionante. envía pulsaciones de teclas, clics, todo tipo de cosas

https://github.com/BlueM/cliclick

boulder_ruby
fuente
boulder_ruby: una excelente solución, excelente referencia. ¿Eres el cliclickautor?
Johnny Utahh
1
@JohnnyUtahh eso es negativo, solo un nerd obsesionado con la automatización
boulder_ruby