J'utilise Connexion Bureau à distance pour accéder à un poste de travail. Mais dans cet environnement, je ne peux pas utiliser les options d'alimentation du menu Démarrer. J'ai besoin d'un autre moyen d'arrêter ou de redémarrer.
Comment contrôler l'état d'alimentation de mon ordinateur via la ligne de commande?
Les manières les plus courantes d'utiliser la commande shutdown
sont les suivantes:
shutdown -s
- Arrête.shutdown -r
- Redémarre.shutdown -l
- Se déconnecte.shutdown -h
- Hiberne.
Remarque: Il existe un piège courant dans lequel les utilisateurs pensent que -h
signifie "aide" (ce qui est le cas pour tous les autres programmes en ligne de commande. sauf shutdown.exe
, où il signifie "veille prolongée"). Ils exécutent ensuite shutdown -h
et éteignent accidentellement leurs ordinateurs. Attention à ça.
shutdown -i
- "Mode interactif". Au lieu d'effectuer une action, il affiche une boîte de dialogue graphique.
shutdown -a
- Abandonne une commande d'arrêt précédente.Les commandes ci-dessus peuvent être combinées avec ces options supplémentaires:
-f
- Force les programmes à se fermer. Empêche le processus d'arrêt de rester bloqué.-t <seconds>
- Définit le délai avant l'arrêt. Utilisez -t 0
pour arrêter immédiatement.-c <message>
- Ajoute un message d'arrêt. Le message se retrouvera dans le journal des événements.-y
- Force une réponse "oui" à toutes les requêtes d'arrêt.
Remarque: Cette option n'est documentée dans aucune documentation officielle. Il a été découvert par ces utilisateurs de StackOverflow .
Je veux m'assurer que d'autres très bonnes réponses sont également mentionnées avec celle-ci. Ici, ils ne sont dans aucun ordre particulier.
-f
de JosephStyonsrundll32
à partir de VonCSi vous êtes sur un ordinateur distant, vous pouvez également ajouter l'option -f pour forcer le redémarrage. Sinon, votre session peut se fermer et une application obstinée peut bloquer le système.
J'utilise ceci chaque fois que je veux forcer un redémarrage immédiat:
shutdown -t 0 -r -f
Pour une option plus conviviale "donnez-leur du temps", vous pouvez utiliser ceci:
shutdown -t 30 -r
Comme vous pouvez le voir dans les commentaires, le -f est impliqué par le délai d'attente.
Brutus 2006 est un utilitaire qui fournit une interface graphique pour ces options.
Personne n’a mentionné l’option -m
pour l’arrêt à distance:
shutdown -r -f -m \\machinename
Aussi:
-r
provoque un redémarrage (qui correspond généralement à ce que vous souhaitez sur une machine distante, car son démarrage physique peut s'avérer difficile).-f
force le redémarrage.Réponse originale: octobre 2008
Vous avez aussi tous les " série:rundll32.exe Shell32.dll
"
(voir mise à jour ci-dessous)
rundll32.exe user.exe,**ExitWindows**
_ [Arrêt rapide de Windows]_rundll32.exe user.exe,**ExitWindowsExec**
_ [Redémarrer Windows]
_rundll32.exe Shell32.dll,SHExitWindowsEx n
_
où n
signifie:
LOGOFF
SHUTDOWN
REBOOT
FORCE
POWEROFF
(peut être combiné -> 6 = 2 + 4 _FORCE REBOOT
_)
1800 INFORMATION indique gentiment dans les commentaires :
N'utilisez pas _
rundll32.exe
_ à cette fin. Il s'attend à ce que la fonction que vous avez transmise sur la ligne de commande ait une signature de méthode très spécifique - elle ne correspond pas à la signature de méthode deExitWindows
.
Raymond CHEN a écrit:
La signature de fonction requise pour les fonctions appelées par _
rundll32.exe
_ est:
_void CALLBACK ExitWindowsEx(HWND hwnd, HINSTANCE hinst,
LPSTR pszCmdLine, int nCmdShow);
_
Cela n'a pas empêché les gens d'utiliser _
rundll32
_ pour appeler des fonctions aléatoires qui n'étaient pas conçues pour être appelées par _rundll32
_, comme _user32 LockWorkStation
_ ou _user32 ExitWindowsEx
_.
(Oops)
La signature de fonction réelle pour ExitWindowsEx est:
_BOOL WINAPI ExitWindowsEx(UINT uFlags, DWORD dwReserved);
_
Et pour le rendre limpide:
_
Rundll32
_ est un résidu de Windows 95 et il est obsolète depuis au moins Windows Vista car il enfreint de nombreuses consignes d'ingénierie modernes.
Un autre petit conseil: lors du routage du fichier de commandes, j'aime pouvoir l'abandonner au cas où je l'exécuterais accidentellement. Le fichier de commandes appelle donc l’arrêt mais vous laisse ensuite à la commande Invite.
@echo off
echo Shutting down in 10 seconds. Please type "shutdown /a" to abort.
cmd.exe /K shutdown /f /t 10 /r
De plus, comme c'est une minuterie, vous obtenez à peu près le même frisson que lorsque chasse dans le sentier de l'Oregon .
Lorsqu'il est installé sur une machine (la cible est de toute façon Windows XP; je ne suis pas sûr de la cible de Windows Vista), bien que arrêt dans le menu de démarrage soit remplacé par session de déconnexion ou quelque chose du genre qu’il devrait y en avoir un qui s'appelle 'Windows Security' qui fait aussi la même chose que Ctrl + Alt + End comme l'a souligné Owen.
Vous en êtes probablement conscient, mais juste au cas où: il est beaucoup plus facile de simplement taper shutdown -r
(ou la commande de votre choix) dans la boîte de dialogue "Exécuter" et d'appuyer sur Entrée.
Enregistre en laissant des fichiers batch traîner partout.
Je suis en retard à la fête, mais je n'ai pas encore vu cette réponse. Lorsque vous ne souhaitez pas utiliser un fichier de commandes ou tapez la commande. Vous pouvez simplement définir le focus sur le bureau, puis utiliser Alt + F4.
Windows vous demandera ce que vous voulez faire, sélectionnez Arrêter ou Redémarrer.
Pour les captures d'écran et même une vidéo, voir: https://tinkertry.com/how-to-shutdown-or- restart-windows-over-rdp