Se stai cercando di aprire la finestra di login tramite una scorciatoia da tastiera, la risposta è, non c'è una scorciatoia da tastiera predefinita per richiamare la finestra di login. Tuttavia, è possibile creare un servizio di automazione che può quindi avere una scorciatoia da tastiera assegnata.
Il problema con questo metodo è trovare una scorciatoia da tastiera globalmente reattiva che si inneschi senza interferenze e lavori in modo coerente indipendentemente da ciò che è attivo quando viene attivato il corto della tastiera. In alcuni casi può essere vantaggioso utilizzare un'app di terze parti, ad esempio Karabiner , per eseguire l'operazione.
Quello che sto presentando qui è un comando che può essere eseguito, un numero di modi diversi e incorporato in un servizio Automator e / o in un'applicazione AppleScript, ecc.
Come servizio di automazione, tutto ciò che è richiesto è l'aggiunta di uno script di shell di esecuzione azione con il comando . Potresti anche essere in grado di utilizzare il comando insieme a un'app di terze parti che può essere attivata da una scorciatoia da tastiera.
Personalmente, quando possibile, mi piace usare un'applicazione AppleScript perché posso attivarla usando Spotlight o posizionarla sul Dock, ecc. Potrebbe essere qualche battitura in più, tuttavia per me funziona meglio ed evito quello che può essere problematico nel provare ad assegnare a un servizio di Automazione una scorciatoia globale da tastiera.
Il comando che invocherà la finestra di login è:
Come comando Terminale e o Esegui script shell Azione in Automator:
/System/Library/CoreServices/Menu\ Extras/User.menu/Contents/Resources/CGSession -suspend
In AppleScript il comando è:
do shell script "/System/Library/CoreServices/Menu\ Extras/User.menu/Contents/Resources/CGSession -suspend"
Se desideri passare direttamente a un altro utente, puoi utilizzare il seguente comando come esempio.
Come comando Terminale e o Esegui script shell Azione in Automator:
/System/Library/CoreServices/Menu\ Extras/User.menu/Contents/Resources/CGSession -switchToUserID 502
In AppleScript il comando è:
do shell script "/System/Library/CoreServices/Menu\ Extras/User.menu/Contents/Resources/CGSession -switchToUserID 502"
Il mio ID utente di accesso principale ( $UID
) è 501
e ho un account di prova che ha un $UID
di 502
. Quindi il comando sopra mi consente di invocare Cambio rapido utente sul mio account di prova utilizzando Spotlight (spazio comando) e l'app AppleScript denominata TA.app. È il primo successo in Spotlight, quindi se digito Comando - Spazio - T - A - Inserisci Visualizzo la mia finestra di accesso all'account di test in modo facile e veloce.
Quindi, con i comandi forniti, dovresti essere in grado di utilizzare ciò che è appropriato alle tue esigenze / vuole codice con in un modo molto più semplice il codice che hai mostrato nella tua domanda.
Nota: prendi nota del doppio backslash nella riga di comando do shell script
di AppleScript per evitare lo spazio nella riga di comando della shell rispetto alla singola barra retroversa come un normale comando in Terminale.