74 votes

Commande de l'écran de verrouillage en une phrase

J'essaie de savoir s'il existe une sorte de ligne de commande équivalente qui reproduit exactement la même fonctionnalité que l'option de menu "Écran de verrouillage" disponible via l'application Trousseau de clés dans OS X 10.6.

Je connais toutes les solutions "habituelles" (préférences de mise en veille/écran de veille pour demander un mot de passe à la réactivation) mais elles ne me conviennent pas.

Je suis également conscient de cette option :

/System/Library/CoreServices/Menu\ Extras/user.menu/Contents/Resources/CGSession -suspend

ce qui ne me convient pas non plus.

La fonctionnalité parfaite est l'option "écran de verrouillage", mais je n'ai pas encore trouvé une façon élégante de l'appeler.

Pour l'instant, j'appelle via Automator, ce qui n'est pas élégant !

J'ai beaucoup lu sur le sujet et je crois savoir que personne n'a encore trouvé le "Saint Graal", mais je me demandais si cela avait changé.

0 votes

Qu'est-ce que vous appelez avec Automator ?

0 votes

Désolé, j'aurais dû être plus clair... J'ai enregistré un "Watch Me Do" dans Automator (lié à un raccourci clavier système) qui, littéralement, déplace la souris vers l'option de menu et la sélectionne. Cela fonctionne, mais c'est lent et pas du tout élégant !

3 votes

Qu'y a-t-il de mal à configurer les préférences de sécurité pour exiger un mot de passe lorsque l'écran de veille est actif, puis à utiliser un coin chaud pour activer l'écran de veille ? C'est rapide et élégant, mais vous avez dit que vous n'aimiez pas cette solution.

2voto

real_human_bean Points 31

J'ai également rencontré ce problème. /System/Library/CoreServices/Menu\ Extras/user.menu/Contents/Resources/CGSession -suspend permet au système de suspendre toutes les tâches, plutôt que de verrouiller l'écran.

JordanBtucker était sur la bonne voie, voici la fonction complète que j'utilise :

lockscr() {
  if [ "$(defaults read com.apple.screensaver askForPasswordDelay 2>/dev/null)" ]; then
    local Olddelay="$(defaults read com.apple.screensaver askForPasswordDelay)"
    defaults write com.apple.screensaver askForPasswordDelay -int 0 && \
        pmset displaysleepnow
    defaults write com.apple.screensaver askForPasswordDelay -int "${Olddelay}"
  else
    defaults write com.apple.screensaver askForPasswordDelay -int 0 && \
        pmset displaysleepnow
    defaults delete com.apple.screensaver askForPasswordDelay
  fi;
}

Cela permet à l'utilisateur de conserver ses propres paramètres mais verrouille l'écran de manière sécurisée :)

0 votes

Dans High Sierra, ces valeurs ne sont plus définies par l'interface utilisateur. Cependant, si vous les définissez manuellement, l'interface utilisateur les respectera. defaults write com.apple.screensaver askForPassword -bool TRUE et defaults write com.apple.screensaver askForPasswordDelay -int 10 Ce sont mes valeurs par défaut. Maintenant, le script ci-dessus se comportera comme décrit.

2voto

Akash Agarwal Points 139

Sous 10.14.6 Mojave, je lance le moteur d'économiseur d'écran en utilisant cette commande à la place :

/System/Library/CoreServices/ScreenSaverEngine.app/Contents/MacOS/ScreenSaverEngine

Modification : Assurez-vous d'avoir configuré les préférences pour verrouiller l'écran lorsque l'économiseur d'écran est actif dans les préférences système et pour demander le mot de passe immédiatement.

0 votes

Mais ça ne s'est pas verrouillé. J'ai appuyé sur une touche et ça s'est rouvert. Pourriez-vous lire les commentaires des autres réponses concernant la mention " require password immediately after " dans les préférences système et mettre à jour les vôtres en conséquence ?

0 votes

@ankii merci de l'avoir signalé.

1voto

iolsmit Points 4325

Yo uso BetterTouchTool à cette fin et a assigné un raccourci clavier à "Switch to login screen" (qui est l'écran de verrouillage) : cela ne remplit pas l'exigence de la ligne de commande mais peut vous être utile de toute façon.

keyboard shortcut in BetterTouchTool to lock screen

0 votes

Merci pour votre aide et vos suggestions. Avec QuickLock mentionné ci-dessus par @TJLuoma BetterTouchTool (bien que ce ne soit pas la méthode que j'ai cherchée) semble se rapprocher de mes objectifs fonctionnels. Je vais y regarder de plus près... merci.

0voto

dr.nixon Points 4692

Je ne suis pas sûr de comprendre votre problème ici. Si vous exigez un mot de passe pour l'économiseur d'écran, cela n'empêchera pas les processus de s'exécuter ni l'accès à distance à votre Mac. J'ai activé cette option (en utilisant ControlPlane pour l'activer au travail et la désactiver à la maison) et le système n'a jamais refusé de répondre à une connexion Remote Desktop, VNC ou SSH. Dans tous les cas où l'accès à l'interface graphique est requis, il me suffit d'entrer le mot de passe ; SSH utilise une paire de clés et aucun mot de passe n'est demandé. Si vous ne voulez pas que les applications se mettent en veille, assurez-vous que les paramètres d'alimentation du système sont tels qu'il ne se mettra pas en veille avant votre retour. Réglez simplement le délai de mise en veille sur un long délai. Si vous ne voulez tout simplement pas être dérangé par la saisie d'un mot de passe lorsque vous êtes assis devant l'ordinateur et que vous travaillez, augmentez le délai de l'économiseur d'écran pour qu'il soit plus long avant qu'il ne s'active, ou ajoutez un délai d'une minute entre l'économiseur d'écran et la demande de mot de passe afin que vous ayez une chance de l'attraper avant qu'il ne vous verrouille.

J'utilise ctrl-shift-eject pour verrouiller l'écran. C'est rapide, simple et ça marche. C'est la façon intégrée de verrouiller l'écran. Personne n'est susceptible de proposer une alternative, simplement parce que reproduire les fonctions déjà intégrées au système d'exploitation est un peu trop redondant pour que quelqu'un y consacre beaucoup de temps.

Pour autant que je sache, il n'y a pas d'option "écran de verrouillage" dans le Trousseau dans 10.8 de toute façon, donc votre solution préférée n'existera pas si vous faites une mise à jour. Edit : Je n'avais pas remarqué cela dans les préférences du Trousseau ; oui, c'est toujours là dans la 10.8.

Si vous utilisez Automator pour cela, ne pouvez-vous pas simplement empaqueter le script comme une application et lui attribuer une combinaison de touches de raccourci ou le laisser dans le Dock pour un accès rapide ?

0 votes

Le ctrl-shift-eject ne fait que passer en mode "changement rapide d'utilisateur". Au moins une solution VPN (celle que je dois utiliser pour le travail) n'aime pas cela, et déconnecte le VPN lorsque je fais cela, mettant fin à toutes les sessions sous-jacentes auxquelles j'ai pu me connecter. Bien que je puisse simplement me reconnecter à ma session VPN lorsque je déverrouille l'ordinateur, cette expérience peut durer plus d'une minute, ce qui ne permet pas de choisir l'option "rapide". Par conséquent, ce n'est pas, à mon avis, une solution précise à la question.

0voto

Saaru Lindestøkke Points 5124

Tout comme l'auteur de la question, je cherchais un moyen d'utiliser l'écran de verrouillage des trousseaux de clés de manière rapide.

En combinant les connaissances d'un ancien indice de Mac OS X et un peu d'Applescripting, j'ai obtenu ce qui suit :

Suivez d'abord les étapes du Indication liée à Mac OS X pour ajouter un raccourci clavier pour la fonctionnalité de verrouillage de l'écran de Keychains.

Pour moi (sur 10.8.4), cela n'a pas résolu le problème car j'ai dû appuyer sur ctrl + F8 pour mettre l'accent sur la barre d'état, appuyez sur down pour ouvrir la barre de menu du trousseau, puis appuyez sur ctrl + F9 pour verrouiller l'écran. J'ai automatisé ce processus avec l'Applescript suivant :

# Press ^F8
tell application "System Events"
    key code 100 using control down
end tell

# Press "down"
tell application "System Events"
    key code 125
end tell

# Press ^F9
tell application "System Events"
    key code 101 using control down
end tell

Ouvrez Automator, créez un nouveau Service, ajoutez un Run Applescript copier-coller le code ci-dessus et enregistrer le service Automator sous le nom de votre choix. Allez maintenant dans Raccourcis clavier dans les Préférences système et ajoutez un raccourci clavier pour le service Automator fraîchement créé. J'ai défini le mien comme suit ctrl + cmd + L .

Appuyez maintenant sur le raccourci clavier dans n'importe quelle application et votre écran sera verrouillé instantanément.

Pour ceux qui se demandent pourquoi ne pas opter pour d'autres méthodes, voici ce que j'en pense :

  • Changement rapide d'utilisateur/écran de verrouillage
    Avec cette méthode, je suis déconnecté du réseau WPA2 de mon entreprise. Ce n'est pas bon, car la reconnexion prend parfois des heures.

  • Écran de veille + mot de passe
    Reproduit la fonctionnalité mais Cela signifie que si mon ordinateur portable reste inactif pendant un certain temps alors que je suis en train de lire un article à côté de lui, l'écran sera verrouillé lorsque je voudrai l'utiliser à nouveau. Ce n'est pas souhaitable. Le fait de coupler cette méthode avec un hot-corner a pour effet secondaire que les utilisateurs inexpérimentés de Mac peuvent déclencher le hot-corner par accident, ce qui entraîne le verrouillage de l'écran. Il m'arrive aussi de déclencher un hot-corner par accident, ce qui ralentit considérablement mon flux de travail.

  • Applications tierces
    Tout cela est très bien, mais pourquoi utiliser une application tierce si elle est disponible en natif dans le système d'exploitation ?

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X