Es scheint zwei Hauptversionen des Skripts zu geben.
Die erste ähnelt Ihrer, mit der Ausnahme, dass "Keystroke Return" zweimal wiederholt wird ( Quelle ):
osascript <<EOF tell application "System Events" keystroke "USERNAME" keystroke tab delay 0.5 keystroke "PASSWORD" delay 0.5 keystroke return keystroke return end tell EOF
Jemand hat sogar herausgefunden, dass zweimal nicht genug ist:
osascript <<EndOfMyScript tell application "System Events" keystroke "USERNAME" keystroke tab delay 0.5 keystroke "PASSWORD" delay 0.5 keystroke return keystroke tab delay 0.5 keystroke "PASSWORD" delay 0.5 keystroke return keystroke return keystroke return keystroke return keystroke return end tell EndOfMyScript
Während jemand anderes diese Lösung vorgezogen hat, funktioniert diese Lösung, wenn Sie eine Liste von Benutzern mit der Anzeige "Other ..." im Anmeldefenster sehen:
osascript <<EOT set username_ to "username" set password_ to "password" tell application "System Events" key code 125 -- Down Arrow key code 125 -- Down Arrow delay 1 key code 125 -- Down Arrow key code 125 -- Down Arrow key code 125 -- Down Arrow key code 125 -- Down Arrow key code 125 -- Down Arrow key code 125 -- Down Arrow delay 0.5 key code 36 -- Return delay 1 tell process "SecurityAgent" to set value of text field 1 of group 1 of window 1 to username_ tell process "SecurityAgent" to set value of text field 2 of group 1 of window 1 to password_ click button "Log In" of window 1 of application process "SecurityAgent" end tell EOT
(Beantwortet von einem Nicht-Mac-Benutzer)