从 Windows 7 上的命令行休眠计算机

A J*_*son 70 windows-7 hibernate command-line

我正在尝试从命令中休眠我的计算机。我是shutdown /s /t 20用来关闭电脑的。我将 /s 更改为 /h 以进行休眠,现在它只返回使用文本,就好像它无法识别我输入的内容一样。在这确实说

/h         Hibernate the local computer.
Run Code Online (Sandbox Code Playgroud)

还有什么我需要与 /h 一起使用才能让它休眠的东西吗?

Pho*_*shi 84

不幸的是,我不相信你可以设定冬眠时间。

尝试:

ping -n 20 127.0.0.1 > NUL 2>&1 && shutdown /h /f
Run Code Online (Sandbox Code Playgroud)

ping是一种延迟行动的骇人听闻的方式。-n 20应该等待 20 秒。

(双&&将允许你做一个Ctrl+C来取消操作,但如果你使用一个简单的&然后按Ctrl+C只会打破计时器然后继续关闭)

  • 为什么我们不能设置休眠时间?Windows 开发人员不难允许此功能。但为什么他们没有呢?哦 (8认同)

小智 39

您还可以考虑以类似的方式使用“超时”或“等待”命令。

timeout /t 20 /NOBREAK > NUL && shutdown /h
Run Code Online (Sandbox Code Playgroud)

或者

waitfor NUL /t 20 || shutdown /h
Run Code Online (Sandbox Code Playgroud)

更多信息:如何让批处理文件等待/休眠几秒钟?

  • 这两个选项都有效,但**第一个更好**。如果你想通过 <kbd>Ctrl</kbd>+<kbd>C</kbd> 取消命令,第一个选项将被取消,但第二个将在第一个条件下收到一个 `false` 并跳转到 `直接关闭`命令。 (2认同)

小智 12

我使用以下内容:

sleep 20 && shutdown /h /f
Run Code Online (Sandbox Code Playgroud)

或者,如果我想在某个时间关闭它:

At 22:30 shutdown /h /f
Run Code Online (Sandbox Code Playgroud)


Jos*_*ved 9

我认为它抱怨时间。只要把shutdown /h它应该工作。


小智 8

当然,您可以设置 TIME 进行休眠。

如果您真的想在特定时间后休眠您的计算机,您需要做的就是在cmd. IE:

timeout /t 36000 /nobreak && shutdown /h
Run Code Online (Sandbox Code Playgroud)

现在计算机将开始从 36000 倒计时到 0,然后才会进入休眠状态。但是您应该注意,您可以将 36000 更改为适合您的任意秒数。