¿Enviar clave mediante ssh o usar el mouse para activar el modo de visualización de destino?

11

¿Es posible enviar una pulsación de tecla a través de SSH? Quiero poder enviar ⌘ (CMD)+ F2vía ssh desde / a Mac OS X. Si eso no es posible, una solución de mouse también sería buena.

La razón por la que necesito esto es porque solo tengo un teclado (pero dos ratones). Yo uso mi iMac como pantalla externa. Para activar el modo de visualización de destino en el iMac, debo conectar el teclado Bluetooth cada vez, presionar CMD+ F2e intentar que mi computadora portátil se conecte al teclado.

¡Enviar CMD+ a F2través de ssh o poder usar mi mouse en el iMac original me ahorraría muchos problemas!

iDev247
fuente

Respuestas:

3

No probado, pero podría considerar crear un applecript en ~ / bin / command_f2 en el iMac con el siguiente contenido:

diga a la aplicación "Eventos del sistema" a la pulsación de tecla "F2" usando {comando abajo}

y luego de su tipo de computadora portátil:

ssh me @ imac '~ / bin / command_f2'

Para obtener más ayuda con esta pregunta, considere cambiar el título a algo así como "Enviar pulsaciones de teclas a través de ssh" porque "teclas" podría significar confundirse con las teclas ssh.

Buena suerte.

John Schmitt
fuente
1
En el camino correcto. Lo que intenté fue osascript -e 'tell application "System Events" to key code 120 using command down';. En general, funciona y puede enviar claves, pero cuando se trata de CMD + F2 no parece funcionar / habilitar el modo de visualización de destino. ¿Es correcto el comando? ¿Hay alguna otra manera de habilitar el modo de visualización de destino con el mouse o el comando? Códigos clave encontrados aquí
iDev247
Pude hacerlo con keyboardmaestro.com/main ... Me pregunto qué envía como comando para que funcione.
iDev247
No tengo un teclado de manzana, ¿podrías compartir tu macro si es posible? Grabar Cmd-F2 usando mi filco no cambia.
Florian Doyon el
15

Lo siento, John Schmitt, tu solución no probada no funciona, pero estabas en el camino correcto. Este está probado, y funciona.

El comando correcto es (si incrusta Applescripts en scripts de shell, que es como prefiero hacerlo):

osascript -e 'tell application "System Events" to key code 144 using command down'

Guarde eso, por ejemplo, como ~ / bin / tdm.sh, en la máquina de visualización de destino.

Luego, desde la máquina principal, emita esto en la Terminal:

ssh username@target-display-machine "~/bin/tdm.sh"

Hay otras formas de guardar e invocar el comando Applescript. Me parece más conveniente y coherente incrustarlos en scripts de shell, mi preferencia particular, ya que de todos modos hago muchos scripts de shell.

Jose
fuente
1
Esto no funciona para mí, en un iMac de 27 "que ayer estaba ingresando felizmente a TDM a través de cmd-f2 en un teclado Apple real, pero ya no lo está hoy. ¿Alguien sabe de alguna forma en que puedo forzarlo desde el firmware? no necesito / quiero arrancar MacOS en absoluto en esta máquina.
Robert Atkins
1
Esto funciona para mí, pero solo si un teclado físico está realmente conectado a él a través de USB o bluetooth. ¿No es posible hacer esto sin él?
Vivek VK
Esto también podría no haber sido probado, porque no funciona.
hmedia1
@VivekVK Es posible. La prueba de concepto es que se puede hacer desde el teclado de accesibilidad (sin ningún teclado real conectado), por lo que las API están allí ... en algún lugar
hmedia1
no funciona para mí
wukong
0

Tengo este script en mi iMac "display" y solo comparto la pantalla del portátil para hacer clic y ejecutarlo. Si el iMac está bloqueado, uso el Escritorio remoto para desbloquearlo. Estoy seguro de que hay una manera más eficiente, pero es muy fácil ...

tell application "System Events"
    key code 144 using {command down}
end tell
David
fuente