Ich habe Remotedesktopverbindung verwendet, um auf eine Workstation zuzugreifen. In dieser Umgebung kann ich die Energieoptionen im Startmenü nicht verwenden. Ich benötige eine alternative Möglichkeit zum Herunterfahren oder Neustarten.
Wie steuere ich den Energiezustand meines Computers über die Befehlszeile?
Die gebräuchlichsten Methoden zur Verwendung des Befehls shutdown
sind:
shutdown -s
- Wird heruntergefahren.shutdown -r
- Neustart.shutdown -l
- Meldet sich ab.shutdown -h
- Winterschlaf.
Hinweis: Es gibt eine häufige Gefahr, dass Benutzer denken, -h
bedeutet "Hilfe" (was für jedes andere Befehlszeilenprogramm gilt). außer shutdown.exe
, wo es "Ruhezustand" bedeutet). Sie führen dann shutdown -h
aus und schalten versehentlich ihre Computer aus. Achten Sie darauf.
shutdown -i
- "Interaktiver Modus". Anstatt eine Aktion auszuführen, wird ein GUI-Dialogfeld angezeigt.
shutdown -a
- Bricht einen vorherigen Befehl zum Herunterfahren ab.Die obigen Befehle können mit diesen zusätzlichen Optionen kombiniert werden:
-f
- Erzwingt das Beenden von Programmen. Verhindert, dass das Herunterfahren blockiert.-t <seconds>
- Stellt die Zeit bis zum Herunterfahren ein. Verwenden Sie -t 0
, um das System sofort herunterzufahren.-c <message>
- Fügt eine Meldung zum Herunterfahren hinzu. Die Nachricht wird im Ereignisprotokoll gespeichert.-y
- Erzwingt eine "Ja" -Antwort auf alle Abschaltabfragen.
Hinweis: Diese Option ist in keiner offiziellen Dokumentation dokumentiert. Es wurde von diesen StackOverflow-Benutzern entdeckt.
Ich möchte sicherstellen, dass neben dieser auch einige andere wirklich gute Antworten erwähnt werden. Hier sind sie in keiner bestimmten Reihenfolge.
-f
Option von JosephStyonsrundll32
von VonCWenn Sie sich auf einem Remotecomputer befinden, möchten Sie möglicherweise auch die Option -f hinzufügen, um den Neustart zu erzwingen . Andernfalls wird Ihre Sitzung möglicherweise geschlossen und eine hartnäckige App kann das System zum Erliegen bringen.
Ich benutze dies, wenn ich einen sofortigen Neustart erzwingen möchte:
shutdown -t 0 -r -f
Für eine freundlichere Option "Geben Sie ihnen etwas Zeit" können Sie dies verwenden:
shutdown -t 30 -r
Wie Sie in den Kommentaren sehen können, wird das -f durch das Timeout impliziert.
Brutus 2006 ist ein Dienstprogramm, das eine grafische Benutzeroberfläche für diese Optionen bietet.
Niemand hat die Option -m
für das Remote-Herunterfahren erwähnt:
shutdown -r -f -m \\machinename
Ebenfalls:
-r
führt zu einem Neustart (was normalerweise auf einem Remotecomputer gewünscht wird, da der physische Start möglicherweise schwierig ist).-f
-Parameteroption erzwingt den Neustart.Ursprüngliche Antwort: Okt. 2008
Sie haben auch alle " Serie:rundll32.exe Shell32.dll
"
(siehe Update unten)
rundll32.exe user.exe,**ExitWindows**
_ [Windows schnell herunterfahren]_rundll32.exe user.exe,**ExitWindowsExec**
_ [Windows neu starten]
_rundll32.exe Shell32.dll,SHExitWindowsEx n
_
wo n
steht für:
LOGOFF
SHUTDOWN
REBOOT
FORCE
POWEROFF
(kombinierbar -> 6 = 2 + 4 _FORCE REBOOT
_)
1800 INFORMATION weist freundlich darauf hin in den Kommentaren :
Verwenden Sie für diesen Zweck nicht _
rundll32.exe
_. Es wird erwartet, dass die Funktion, die Sie in der Befehlszeile übergeben haben, eine sehr spezifische Methodensignatur hat - sie stimmt nicht mit der Methodensignatur vonExitWindows
überein.
Raymond CHEN schrieb:
Die für von _
rundll32.exe
_ aufgerufene Funktionen erforderliche Funktionssignatur lautet:
_void CALLBACK ExitWindowsEx(HWND hwnd, HINSTANCE hinst,
LPSTR pszCmdLine, int nCmdShow);
_
Das hat die Leute nicht davon abgehalten, _
rundll32
_ zu verwenden, um zufällige Funktionen aufzurufen, die nicht für den Aufruf durch _rundll32
_ entwickelt wurden, wie _user32 LockWorkStation
_ oder _user32 ExitWindowsEx
_.
(Hoppla)
Die eigentliche Funktionssignatur für ExitWindowsEx lautet:
_BOOL WINAPI ExitWindowsEx(UINT uFlags, DWORD dwReserved);
_
Und um es glasklar zu machen:
_
Rundll32
_ ist ein Überbleibsel von Windows 95 und seit mindestens Windows Vista veraltet, da es gegen viele moderne technische Richtlinien verstößt.
Noch ein kleiner Tipp: Wenn ich die Batch-Datei-Route gehe, kann ich sie gerne abbrechen, falls ich sie versehentlich ausführe. Die Batch-Datei ruft also das Herunterfahren auf, lässt Sie aber anschließend bei der Eingabeaufforderung.
@echo off
echo Shutting down in 10 seconds. Please type "shutdown /a" to abort.
cmd.exe /K shutdown /f /t 10 /r
Da es sich um eine Zeitschaltuhr handelt, ist der Nervenkitzel bei der Jagd auf dem Oregon Trail ungefähr gleich hoch .
Bei Remotezugriff auf einen Computer (Ziel ist ohnehin Windows XP; ich bin nicht sicher, ob Windows Vista das Ziel ist), obwohl Herunterfahren im Startmenü durch Sitzung trennen oder so ähnlich ersetzt wird dass es eine namens "Windows-Sicherheit" geben sollte, die auch das Gleiche tut wie Ctrl + Alt + End wie von Owen gezeigt.
Das ist Ihnen wahrscheinlich bewusst, aber nur für den Fall: Es ist viel einfacher, einfach shutdown -r
(oder einen beliebigen Befehl) in das Feld "Ausführen" einzugeben und die Eingabetaste zu drücken.
Spart es, Batch-Dateien überall herumliegen zu lassen.
Ich bin zu spät zur Party, habe diese Antwort aber noch nicht gesehen. Wenn Sie keine Stapeldatei verwenden oder den Befehl eingeben möchten. Sie können den Fokus einfach auf den Desktop legen und dann verwenden Alt + F4.
Windows fragt Sie, was Sie tun möchten, und wählt Herunterfahren oder Neustart.
Screenshots und sogar ein Video finden Sie unter: https://tinkertry.com/how-to-shutdown-or-restart-windows-over-rdp