Oprócz używania ssh
do uruchamiania poleceń na zdalnym hoście, możesz używać Zdalnych zdarzeń Apple, które również mają say
polecenie, a także inne, które mogą być dla Ciebie przydatne, np display alert
.
Na komputerze docelowym włącz:
Preferencje systemowe> Udostępnianie> Zdalne zdarzenia Apple
Następnie z poziomu komputera uruchom następujący skrypt (w AppleScript Editor lub przez osascript
Terminal):
tell application "Finder" of machine "eppc://machine-name.local"
say "Hello"
end tell
Poprosi Cię o uwierzytelnienie podczas kompilacji lub uruchomienia. Jeśli zrobisz to w programie AppleScript Editor, zapamięta uwierzytelnianie, dopóki program AppleScript Editor pozostanie otwarty, więc nie będziesz musiał uwierzytelniać się przy każdym uruchomieniu. (Okno dialogowe uwierzytelniania ma również opcję zapisania poświadczeń w pęku kluczy, aby uniknąć wielokrotnego atakowania).
Możesz to zrobić z wiersza polecenia w terminalu za pomocą:
osascript -e 'tell application "Finder" of machine "eppc://machine-name.local" to say "Hello"'
Jak wyświetlić wiadomość na zdalnym komputerze
Możesz także wyświetlić komunikat, logując się na zdalnym komputerze za pomocą ssh
† i uruchamiając to polecenie w zdalnej powłoce (nie używa to Zdalnych zdarzeń Apple, tylko Zdalne logowanie dla ssh
):
osascript -e 'say "Hello" without waiting until completion' -e 'tell application "System Events"' -e 'activate' -e 'display alert "Hello!"' -e 'end'
say
Komenda rozpoczyna mowę asynchronicznie, to przynosi Zdarzenia systemowe do przodu, aby wyświetlić wiadomość, gdy mowa jest odtwarzany.
† Polecenia wyświetlające interfejs użytkownika, takie jak display alert
i display dialog
, nie są dozwolone przez Zdalne zdarzenia Apple. Aby wysłać je do procesu na zdalnym komputerze, musisz najpierw przejść ssh
.