How can I make a computer sleep with a python script?
It has to be sleep, not hibernate or anything else.
I have tried to use cmd
but there is no command to sleep or I didn't find one.
Adding a Python sleep() Call With time.sleep() Python has built-in support for putting your program to sleep. The time module has a function sleep() that you can use to suspend execution of the calling thread for however many seconds you specify.
The script stops running, assuming it's running on the computer that sleeps/shuts down/hibernates.
Hit the R key to restart. Press S to put Windows to sleep. Use H to hibernate.
You can use
import os
os.system("rundll32.exe powrprof.dll,SetSuspendState 0,1,0")
If this command doesn't work for you (it actually puts your comp. in hibernation mode) you will need to turn hibernation off:
Powercfg -H OFF
To turn hibernation mode back on:
Powercfg -H ON
Alternatively, you can also use:
Rundll32.exe Powrprof.dll,SetSuspendState Sleep
If you don't want to turn hibernation off just to run a command, you can use psshutdown as an alternative
C:\Windows\System32\psshutdown.exe -d -t 0
As for what os.system
does, straight from the documentation:
Execute the command (a string) in a subshell.
An additional note:
You will need to have administrator permissions to run Powercfg -H *
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
should work. Note 0,1,0 - that set is for sleep. Without - hibernation.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With