Ich habe zwei Macs in unserem Haus (iMac und MacBook Pro).
Ich möchte das say
Befehlszeilendienstprogramm verwenden, um etwas auf meinem MBP einzugeben und es auf dem iMac sprechen zu lassen, ähnlich einem Intercom-System.
Außerdem könnte es komisch sein, meiner Frau Nachrichten zu senden, während sie den iMac verwendet.
Kann das gemacht werden?
snow-leopard
terminal
applescript
network
cbmeeks
quelle
quelle
Antworten:
Da sich die beiden Macs im selben Haus befinden, gehe ich davon aus, dass sie beide im selben Netzwerk sind.
Zunächst müssen Sie
Remote Login
auf dem Mac aktivieren, auf dem der Sound ausgegeben werden soll.Gehen Sie zu
System Preferences > Sharing
und aktivieren Sie dasRemote Login
Kontrollkästchen. Öffnen Sie dann auf Ihrem Computer das Terminal und geben Sie dies einWo
<user>
ist Ihre Frau einloggen und<computer name>
ist der Name des anderen Computers.Jetzt ist es so, als hätten Sie das Terminal auf dem Computer Ihrer Frau geöffnet und können,
say
was immer Sie möchten.quelle
ssh user@hostname 'say hello'
Neben der Verwendung von
ssh
Befehlen auf dem Remote - Host ausführen, können Sie von Remote Apple Events, benutzen , die auch einen habensay
Befehl, wie auch andere, die Ihnen nützlich sein können, wiedisplay alert
.Aktivieren Sie auf dem Zielcomputer Folgendes:
Führen Sie dann auf Ihrem Computer das folgende Skript aus (im AppleScript-Editor oder über
osascript
Terminal):Sie werden aufgefordert, sich zu authentifizieren, wenn Sie dies kompilieren oder ausführen. Wenn Sie dies im AppleScript Editor tun, wird die Authentifizierung gespeichert, solange Sie den AppleScript Editor geöffnet lassen, sodass Sie sich nicht jedes Mal authentifizieren müssen, wenn Sie diesen ausführen. (Das Authentifizierungsdialogfeld bietet auch die Option, Ihre Anmeldeinformationen im Schlüsselbund zu speichern, um zu vermeiden, dass Sie wiederholt belästigt werden.)
Sie können dies von der Kommandozeile in Terminal aus tun mit:
Anzeigen einer Nachricht auf einem Remote-Computer
Sie können eine Meldung auch anzeigen, indem Sie sich mit
ssh
† auf dem Remote-Computer anmelden und diesen Befehl in der Remote-Shell ausführen (dies nutzt keine Remote-Apple-Ereignisse, sondern nur die Remote-Anmeldung fürssh
):Der
say
Befehl startet die Sprache asynchron. Dadurch werden Systemereignisse in den Vordergrund gerückt, um die Nachricht anzuzeigen, während die Sprache abgespielt wird.† Befehle, die die Benutzeroberfläche anzeigen, wie
display alert
unddisplay dialog
, sind über Remote-Apple-Ereignisse nicht zulässig. Um sie an einen Prozess auf einem Remotecomputer zu senden, müssen Sie zunächst die folgenden Schritte ausführenssh
.quelle
Alternativ hindert nichts Sie daran, den in OSX integrierten Remotedesktop oder die Bildschirmfreigabe zu verwenden und sich nur als normaler Benutzer anzumelden, und überspringt das Terminal.
Dann kannst du normal sagen. Oder es gibt viele Apps, die Text in Sprache umwandeln.
quelle