Tengo dos Mac en nuestra casa (iMac y MacBook Pro).
Me gustaría usar la say
utilidad de línea de comandos para escribir algo en mi MBP y hacer que hable en el iMac, más bien como un sistema de intercomunicación.
Además, podría ser divertido enviarle mensajes a mi esposa mientras está usando el iMac.
Se puede hacer esto?
snow-leopard
terminal
applescript
network
cbmeeks
fuente
fuente
Respuestas:
Como las dos Mac están en la misma casa, supongo que ambas están en la misma red.
En primer lugar, debe activar
Remote Login
en la Mac donde desea que salga el sonido.Ve
System Preferences > Sharing
y marca laRemote Login
casilla de verificación. Luego, usando su computadora, abra Terminal y escriba esto¿Dónde
<user>
está el inicio de sesión de su esposa y<computer name>
es el nombre de la otra computadora?Ahora, es como si tuviera una Terminal abierta en la computadora de su esposa y pueda hacer
say
lo que quiera.fuente
ssh user@hostname 'say hello'
Además de usar
ssh
para ejecutar comandos en el host remoto, puede usar Remote Apple Events, que también tiene unsay
comando, así como otros que pueden serle útiles, comodisplay alert
.En la máquina de destino, habilite:
Luego, desde su máquina, ejecute el siguiente script (en AppleScript Editor, o vía
osascript
Terminal):Le pedirá que se autentique cuando compile o ejecute esto. Si lo hace en AppleScript Editor, recordará la autenticación siempre que deje abierto AppleScript Editor, por lo que no tendrá que autenticarse cada vez que ejecute esto. (El cuadro de diálogo de autenticación también tiene una opción para guardar sus credenciales en el llavero para evitar ser molestado repetidamente).
Puede hacerlo desde la línea de comandos en la Terminal con:
Cómo mostrar un mensaje en una máquina remota
También puede mostrar un mensaje iniciando sesión en la máquina remota con
ssh
† y ejecutando este comando en el shell remoto (esto no hace uso de Remote Apple Events, solo Remote Login parassh
):El
say
comando inicia el discurso de forma asincrónica, luego esto lleva los eventos del sistema al frente para mostrar el mensaje mientras se reproduce el discurso.† Los comandos que muestran la interfaz de usuario, como
display alert
ydisplay dialog
, no están permitidos a través de Apple Remote Events. Para enviarlos a un proceso en una máquina remota, primero debe pasarssh
.fuente
Alternativamente, otra vez, nada le impide usar Escritorio remoto o Compartir pantalla, que está integrado en OSX, e iniciar sesión como usuario normal, omitiendo el terminal.
Entonces puedes usar decir normalmente. O hay muchas aplicaciones que hacen texto a voz.
fuente