Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

This question already has an answer here:

Mods, please remove the duplicate tag from this. I've explained it below:

Not a duplicate. The "duplicate" question doesn't address the time factor -- which is the real problem here.

I'd like to hibernate my windows 7 pc in 10 hours after a download is finished. When I execute this:

shutdown -h -t 36000

All I get is the shutdown help text. Doesn't matter if I'm in admin or normal for the cmd prompt. Is there something I'm missing? I've tried -t 36000 only with the same results. Same with / instead of -.

So either a) it isn't working or b) it has a funny way of telling me about it. Do the power management settings interfere with this command?

Update: The /s switch shuts the computer down (not hibernate). /h is a valid switch. Here's a screenshot of my command:

my shutdown screen

share|improve this question

marked as duplicate by Synetech, Tog, Mokubai, Dave M, nc4pk Nov 20 '13 at 23:25

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

Have you run "powercfg /hibernate on" yet? And what happens if you run the command with only the /h switch, and no /t switch? – goblinbox Mar 20 '11 at 20:15
@goblinbox I tried it with either switch, neither one worked. Do I need to run powercfg to allow shutdown cmd to run the /h switch? – jcollum Mar 20 '11 at 21:12
Hibernate has to be enabled in order to work, yes. – goblinbox Mar 20 '11 at 22:30
@Mokubai can you look at this? I addressed why the duplicate doesn't answer the question in the first line. – jcollum Oct 30 '14 at 15:30
@Mokubai hey I asked you to remove this duplicate 6 months ago, can you get to it? – jcollum Jun 26 '15 at 17:29
up vote 29 down vote accepted

The -h switch is used to shut down the computer on Linux, not Windows. The correct command to shut down a Windows computer after 7 hours is:

shutdown -s -t 36000

Windows will show a dialog box with a countdown until the time the computer will shut down.

But, you want to hibernate, not shutdown, and unfortunately, the /h and the /t switch don't work together. As a workaround, you can use the at command to schedule shutdown /h to run at a certain time. For example, it is 3:00pm in my time zone at present, so 10 hours later would be 1:00am. To schedule it to hibernate then, I would run:

at 1:00 shutdown /h

It uses 24-hour time notation, so if you wanted it to hibernate at 1:00pm, you'd run:

at 13:00 shutdown /h

Please note, that while you don't need administrator permissions to run the shutdown command on default Windows installations, you do need them for the at command.

share|improve this answer
+1 Shutdown ? will show all switches for the command – Dave M Mar 20 '11 at 18:27
You're mistaken, updated OP with a screenshot. – jcollum Mar 20 '11 at 19:33
@jcollum: Sorry about that! It seems Windows does not support timed hibernation. Notice if you omit the /t 36000 switch, the command works. I'll add a workaround to my answer. – Patches Mar 20 '11 at 22:07
Thanks. I never tested out the /h command by itself because that would've just shut it down immediately. Also, I didn't see anywhere on the man page where it said that they weren't compatible -- how would I have found that? – jcollum Mar 20 '11 at 23:14
Under Win 8.1 at command refuses to run, stating that it is deprecated and replaced by schtasks. Pity. – Dominykas Mostauskis Oct 29 '14 at 21:25

It doesn't look like the -t option is supported with the -h option for shutdown.

Under Windows 7, you can duplicate what you're trying to do with a .bat script containing the following:

timeout /t 36000 /nobreak
shutdown -h

It will cause the PC to immediately hibernate once timeout is done counting down.

share|improve this answer
+1 for introducing the timeout command – Isaac Jul 11 '11 at 22:35
You can avoid the batch-file and run it directly too: timeout /t 36000 /nobreak & shutdown /h Of course if you make a batch-file to simplify it, then you should replace the timeout with %1 so that it is general-purpose. – Synetech Jan 30 '13 at 6:02
One warning though, you can’t abort the shutdown by pressing a key with the & version; doing so will immediately shutdown (you are canceling the wait only). With a batch-file, you can press Ctrl+Break and CMD will ask if you want to end the batch-file (and thus abort the shutdown) or continue it. So you have choice of behavior. Or, you can write a more batch file with the choice and skip timeout altogether: choice /n /t 3600 /d Y /m "Abort hibernate?" & if errorlevel 2 shutdown -h (however it doesn’t show the time left and is limited to 9999 seconds—for multi-hour, just use at). – Synetech Jan 30 '13 at 14:56
@Synetech: It's possible to cancel by closing the window, just tried it. – Viktor Mellgren Sep 19 '13 at 21:52
Actually the command without a batch file is timeout /t 36000 /nobreak && shutdown -h - this will stop if you cancel the timeout. With only one ampersand it would execute the second command then. – Sven Nov 14 '13 at 8:59

PsShutdown from Sysinternals can hibernate the computer after a specified amount of time.

psshutdown -h -t 36000
share|improve this answer
This is somehow overkill. Two other answers point out a simpler solution. Anyway thank you for the sysinternals reference – Isaac Jul 11 '11 at 22:37
@Isaac: How is it overkill? PsShutdown can do more than shutdown can and so is useful to have. I don't think adding extra programs in your path is such a big deal. – paradroid Jul 11 '11 at 22:55
@Isaac How is that overkill? It's simpler than every other solution and just saved my ass! :) – Vince Panuccio Oct 22 '14 at 13:00

Not the answer you're looking for? Browse other questions tagged .