我一直在使用远程桌面连接进入工作站.但在此环境中,我无法使用"开始"菜单中的电源选项.我需要另一种方法来关闭或重启.
如何通过命令行控制计算机的电源状态?
使用该shutdown
命令的最常用方法是:
shutdown -s
- 关闭.
shutdown -r
- 重新开始.
shutdown -l
- 注销.
shutdown -h
- 冬眠.
注意:有一个常见的陷阱,用户认为这-h
意味着"帮助"(它对其他所有命令行程序都有帮助......除了shutdown.exe
它意味着"休眠").然后他们跑步shutdown -h
并意外关闭他们的电脑.注意这一点.
shutdown -i
- "互动模式".它不显示操作,而是显示GUI对话框.
shutdown -a
- 中止先前的关闭命令.
上面的命令可以与这些附加选项结合使用:
-f
- 强制程序退出.防止关机过程卡住.
-t
- 设置关闭前的时间.用于-t 0
立即关闭.
-c
- 添加关闭消息.该消息将在事件日志中结束.
-y
- 强制所有关闭查询的"是"答案.
注意:此选项未在任何官方文档中记录.它是由这些StackOverflow用户发现的.
我想确保还提到其他一些非常好的答案.在这里他们没有特别的顺序.
该-f
选项从JosephStyons
使用rundll32
从VonC
在运行框中 从院长
从基普远程关机
如果您在远程计算机上,则可能还需要添加-f选项以强制重新启动.否则您的会话可能会关闭,顽固的应用程序可能会挂起系统.
每当我想强制立即重启时我都会使用它:
shutdown -t 0 -r -f
为了更友好的"给他们一些时间"选项,你可以使用这个:
shutdown -t 30 -r
正如您在注释中看到的那样,-f由超时隐含.
Brutus 2006是一个为这些选项提供GUI的实用程序.
没人提到-m
远程关机的选项:
shutdown -r -f -m \\machinename
也:
该-r
参数导致重新启动(这通常是您在远程计算机上所需的,因为实际启动它可能很困难).
该-f
参数选项强制重启.
当然,您必须具有关闭远程计算机的适当权限.
原答案:2008年10月
你也得到了所有 " 意甲:rundll32.exe shell32.dll
"
(见下面的更新)
rundll32.exe user.exe,**ExitWindows**
[Windows快速关闭]
rundll32.exe user.exe,**ExitWindowsExec**
[重启Windows]
rundll32.exe shell32.dll,SHExitWindowsEx n
在哪里n
代表:
0 - LOGOFF
1 - SHUTDOWN
2 - REBOOT
4 - FORCE
8 - POWEROFF
(可以合并 - > 6 = 2 + 4 FORCE REBOOT
)
1800信息好心指出的评论:
不要
rundll32.exe
用于此目的.它期望您在命令行上传递的函数具有非常特定的方法签名 - 它与方法签名不匹配ExitWindows
.
Raymond CHEN写道:
在2004年" 当你与调用约定不匹配时会出现什么问题? ":
调用函数所需的函数签名
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);
在2011年:" 在人行道上扔垃圾:rundll32计划的悲惨历史 "
并使其清晰:
在2013年" 什么时候使用rundll32的指导?容易:不要使用它 ":
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
另外,由于它是在计时器上,你在俄勒冈小道上狩猎时会得到同样的刺激.
当远程进入一台机器(目标是Windows XP无论如何;我不确定目标Windows Vista),虽然开始菜单上的Shutdown被Disconnect Session或类似的东西取代,但应该有一个名为'Windows Security'的东西也可以与Owen指出的Ctrl+ Alt+ 相同End.
您可能已经意识到这一点,但以防万一:只需键入即可 shutdown -r
"运行"框中(或任何您喜欢的命令)并按Enter即可.
保存各处的剩余批处理文件.
我会在记事本或写字板中写出基本的注销命令:
@echo off shutdown -l
这基本上与手动单击“开始”和“注销”相同,但是如果您已准备好批处理文件,则速度稍有提高。
我迟到了,但还没有看到这个答案.如果您不想使用批处理文件或键入命令.您可以将焦点设置到桌面,然后使用Alt+ F4.
Windows将询问您要执行的操作,选择关闭或重新启动.
有关屏幕截图甚至视频,请参阅:https://tinkertry.com/how-to-shutdown-or-restart-windows-over-rdp