我一直在使用Remote Desktop Connection进入工作站 . 但在此环境中,我无法使用“开始”菜单中的电源选项 . 我需要另一种方法来关闭或重启 .
如何通过命令行控制计算机的电源状态?
使用shutdown命令的最常用方法是:
shutdown -s - 关闭 .
shutdown -s
shutdown -r - 重新启动 .
shutdown -r
shutdown -l - 注销 .
shutdown -l
shutdown -h - 冬眠 .
shutdown -h
Note: 有一个常见的陷阱,用户认为 -h 表示"help"(它对每个其他命令行程序都有...除了 shutdown.exe ,这意味着"hibernate") . 然后他们运行 shutdown -h 并意外关闭他们的计算机 . 注意这一点 .
-h
shutdown.exe
shutdown -i - "Interactive mode" . 它不显示操作,而是显示GUI对话框 .
shutdown -i
shutdown -a - 中止先前的关机命令 .
shutdown -a
上面的命令可以与这些附加选项结合使用:
-f - 强制程序退出 . 防止关机过程卡住 .
-f
-t <seconds> - 设置关闭前的时间 . 使用 -t 0 立即关闭 .
-t <seconds>
-t 0
-c <message> - 添加关闭消息 . 该消息将在事件日志中结束 .
-c <message>
-y - 强制"yes"回答所有关机查询 .
-y
Note: 此选项未在任何官方文档中记录 . 它是由these StackOverflow users发现的 .
我想确保还提到其他一些非常好的答案 . 在这里他们没有特别的顺序 .
The -f option来自JosephStyons
Using rundll32来自VonC
The Run box来自Dean
Remote shutdown来自Kip
如果您在远程计算机上,则可能还需要将-f选项添加到 force reboot . 否则您的会话可能会关闭,顽固的应用程序可能会挂起系统 .
每当我想强制立即重启时,我都会使用它:
shutdown -t 0 -r -f
为了更友好的“给他们一些时间”选项,你可以使用这个:
shutdown -t 30 -r
正如您在注释中看到的那样,-f由超时隐含 .
Brutus 2006 is a utility that provides a GUI for these options.
没有人提到远程关机的 -m 选项:
-m
shutdown -r -f -m \\machinename
也:
-r 参数导致重新启动(这通常是您在远程计算机上所需的,因为实际启动它可能很困难) .
-r
-f 参数选项强制重启 .
当然,您必须具有关闭远程计算机的适当权限 .
原答案:2008年10月
您还获得了所有“rundll32.exe shell32.dll”系列:
(见下面的更新)
rundll32.exe user.exe,**ExitWindows** [Windows快速关闭]
rundll32.exe user.exe,**ExitWindows**
rundll32.exe user.exe,**ExitWindowsExec** [重新启动Windows]
rundll32.exe user.exe,**ExitWindowsExec**
rundll32.exe shell32.dll,SHExitWindowsEx n
其中 n 代表:
n
0 - LOGOFF
LOGOFF
1 - SHUTDOWN
SHUTDOWN
2 - REBOOT
REBOOT
4 - FORCE
FORCE
8 - POWEROFF
POWEROFF
(可以合并 - > 6 = 2 4 FORCE REBOOT )
FORCE REBOOT
1800 INFORMATION请指出in the comments:
不要将rundll32.exe用于此目的 . 它期望您在命令行上传递的函数具有非常特定的方法签名 - 它与ExitWindows的方法签名不匹配 .
Raymond CHEN写道:
rundll32.exe调用的函数所需的函数签名是:
void CALLBACK ExitWindowsEx(HWND hwnd, HINSTANCE hinst, LPSTR pszCmdLine, int nCmdShow);
这并没有阻止人们使用rundll32来调用那些不是由rundll32调用的随机函数,比如user32 LockWorkStation或user32 ExitWindowsEx .
(糟糕)
ExitWindowsEx的实际功能签名是:
BOOL WINAPI ExitWindowsEx(UINT uFlags, DWORD dwReserved);
并使其清晰:
Rundll32是Windows 95的遗留物,至少从Windows Vista开始就被弃用,因为它违反了许多现代工程指南 .
另一个小提示:当进入批处理文件路径时,我希望能够在意外运行它时中止它 . 因此批处理文件会调用关闭,但之后会在命令提示符下离开 .
@echo off echo Shutting down in 10 seconds. Please type "shutdown /a" to abort. cmd.exe /K shutdown /f /t 10 /r
另外,由于它是在计时器上,你会得到与hunting in The Oregon Trail时相同的快感 .
当远程进入一台机器(目标是Windows XP无论如何;我不确定目标Windows Vista),虽然开始菜单上的Shutdown被Disconnect Session或类似的东西取代,但应该有一个名为'Windows Security'的东西,它也做同样的事情如欧文指向的Ctrl Alt End .
你__96368_更容易只需输入 shutdown -r (或任何你喜欢的命令)进入"Run"框并点击回车 .
保存各处的剩余批处理文件 .
我想要使用批处理文件或键入命令 . 您可以将焦点设置到桌面,然后使用Alt F4 .
Windows将询问您要执行的操作,选择关闭或重新启动 .
有关屏幕截图甚至视频,请参阅:https://tinkertry.com/how-to-shutdown-or-restart-windows-over-rdp
我会在Notepad或WordPad中写一个基本的注销命令:
@echo off shutdown -l
这是与手动单击启动和注销基本相同,但如果准备好批处理文件,则速度稍快一些 .
9 回答
使用shutdown命令的最常用方法是:
shutdown -s
- 关闭 .shutdown -r
- 重新启动 .shutdown -l
- 注销 .shutdown -h
- 冬眠 .Note: 有一个常见的陷阱,用户认为
-h
表示"help"(它对每个其他命令行程序都有...除了shutdown.exe
,这意味着"hibernate") . 然后他们运行shutdown -h
并意外关闭他们的计算机 . 注意这一点 .shutdown -i
- "Interactive mode" . 它不显示操作,而是显示GUI对话框 .shutdown -a
- 中止先前的关机命令 .上面的命令可以与这些附加选项结合使用:
-f
- 强制程序退出 . 防止关机过程卡住 .-t <seconds>
- 设置关闭前的时间 . 使用-t 0
立即关闭 .-c <message>
- 添加关闭消息 . 该消息将在事件日志中结束 .-y
- 强制"yes"回答所有关机查询 .Note: 此选项未在任何官方文档中记录 . 它是由these StackOverflow users发现的 .
我想确保还提到其他一些非常好的答案 . 在这里他们没有特别的顺序 .
The -f option来自JosephStyons
Using rundll32来自VonC
The Run box来自Dean
Remote shutdown来自Kip
如果您在远程计算机上,则可能还需要将-f选项添加到 force reboot . 否则您的会话可能会关闭,顽固的应用程序可能会挂起系统 .
每当我想强制立即重启时,我都会使用它:
为了更友好的“给他们一些时间”选项,你可以使用这个:
正如您在注释中看到的那样,-f由超时隐含 .
Brutus 2006 is a utility that provides a GUI for these options.
没有人提到远程关机的
-m
选项:也:
-r
参数导致重新启动(这通常是您在远程计算机上所需的,因为实际启动它可能很困难) .-f
参数选项强制重启 .当然,您必须具有关闭远程计算机的适当权限 .
原答案:2008年10月
您还获得了所有“rundll32.exe shell32.dll”系列:
(见下面的更新)
rundll32.exe user.exe,**ExitWindows**
[Windows快速关闭]rundll32.exe user.exe,**ExitWindowsExec**
[重新启动Windows]其中
n
代表:0 -
LOGOFF
1 -
SHUTDOWN
2 -
REBOOT
4 -
FORCE
8 -
POWEROFF
(可以合并 - > 6 = 2 4
FORCE REBOOT
)2015年4月更新(6年后):
1800 INFORMATION请指出in the comments:
Raymond CHEN写道:
(糟糕)
并使其清晰:
另一个小提示:当进入批处理文件路径时,我希望能够在意外运行它时中止它 . 因此批处理文件会调用关闭,但之后会在命令提示符下离开 .
另外,由于它是在计时器上,你会得到与hunting in The Oregon Trail时相同的快感 .
当远程进入一台机器(目标是Windows XP无论如何;我不确定目标Windows Vista),虽然开始菜单上的Shutdown被Disconnect Session或类似的东西取代,但应该有一个名为'Windows Security'的东西,它也做同样的事情如欧文指向的Ctrl Alt End .
你__96368_更容易只需输入
shutdown -r
(或任何你喜欢的命令)进入"Run"框并点击回车 .保存各处的剩余批处理文件 .
我想要使用批处理文件或键入命令 . 您可以将焦点设置到桌面,然后使用Alt F4 .
Windows将询问您要执行的操作,选择关闭或重新启动 .
有关屏幕截图甚至视频,请参阅:https://tinkertry.com/how-to-shutdown-or-restart-windows-over-rdp
我会在Notepad或WordPad中写一个基本的注销命令:
这是与手动单击启动和注销基本相同,但如果准备好批处理文件,则速度稍快一些 .