- Как включить спящий режим через командную строку в Windows 10 или Windows 7
- «На сон грядущий» или таймер выключения Windows из командной строки
- В большинстве своем всё новое это хорошо забытое старое.
- Есть всем известное выражение которое многим нравится:
- Мораль:
- Как перевести компьютер в режим сна из командной строки / меню «Выполнить»?
- Is there a command line to disable sleep on windows 10?
- 7 Replies
- Cmd sleep windows 10
Как включить спящий режим через командную строку в Windows 10 или Windows 7
Для того чтобы включить спящий режим с помощью мышки достаточно сделать несколько кликов в меню «Пуск». Но, если нужно выполнить такую же процедуру через командную строку, то это становится немного сложнее. Особенно если учесть, что стандартная команда shutdown, которая используется для выключения и перезагрузки, в данном случае не поможет.
В этой небольшой инструкции мы рассмотрим сразу два способа, как можно включить спящий режим через командную строку в операционных системах Windows 7 и Windows 10.
Вариант № 1. Включение спящего режима с помощью Rundll32.exe.
Первый вариант предполагает использование программы Rundll32.exe. Это стандартная программа, которая входит в состав Windows 7 и Windows 10, и используется для выполнения функций, находящихся в DLL-файлах. Принцип работы Rundll32 очень прост. В нее передается название DLL-файла, название функции внутри DLL, а также параметры для выполнения. После этого Rundll32 выполняет указанную функцию и данного файла.
Для того чтобы включить спящий режим через командную строку с помощью Rundll32 нужно выполнить следующую команду:
Как видно, команда rundll32 запускает функцию SetSuspendState, которая находится в powrprof.dll. При этом в функцию передается три параметра (0, 1, 0). Больше информации о функции SetSuspendState можно получить на сайте Microsoft.
Нужно отметить, что если на компьютере включен гибридный режим сна, то при выполнении указанной команды будет использоваться именно он. Для того чтобы компьютер переходил в спящий режим, гибридный режим нужно отключить. Для этого нужно запустить командную строку с правами администратора и выполнить указанную ниже команду.
Также, возможно, вам будет полезна стандартная команда « shutdown ». С ее помощью можно выполнить выключение, перезагрузку и переход в гибернацию (спящий режим не поддерживается). Более подробно о команде « shutdown » можно почитать в наших статьях:
Вариант № 2. Включение спящего режима с помощью PsShutdown.
Второй вариант заключается в использовании программы PsShutdown. Данная программа не является частью Windows, но ее можно бесплатно скачать с сайта Microsoft. После скачивания архив нужно распаковать в любую папку и программа готова к работе, никакой установки не требуется.
PsShutdown – это консольная программа, которую нужно запускать из командной строки. Ее можно использовать для выключения локального или удаленного компьютера, включения режима сна или гибернации, выхода из системы или отмены неизбежного выключения. Полный список параметров можно посмотреть на официальной странице.
Для того чтобы перевести локальный компьютер в спящий режим с помощью PsShutdown нужно выполнить следующую команду:
Где параметр « -d » активирует переход в спящий режим, а параметр « -t 0 » выполняет команду немедленно (через 0 секунд).
«На сон грядущий» или таймер выключения Windows из командной строки
Ценность этой статьи скорее не в самом решении, а в напоминании как можно быстро решать простые задачи.
Но если Вам нужно простое решение — пожалуйста:
Сохраните в CMD эти строки и после запуска через 20 минут (1200 секунд) компьютер перейдет в спящий режим. Итого программа заняла 73 байт:
Но если Вам нужно именно выключить, то всё будет еще короче, а именно 47 байт. Просто вторая строка будет выглядеть:
Использую это перед сном, включая свое любимое онлайн радио «на сон грядущий» так же из командной строки, о чём будет рассказано под катом.
Кому все таки стало любопытно, прошу под кат. Ссылки на готовые скрипты в конце статьи.
В большинстве своем всё новое это хорошо забытое старое.
Сначала рассмотрим что делают эти строки:
Пингуем IP адрес который всегда доступен (разве что Ваш firewall настроен «с выдумкой»). Интервал по умолчанию 1000 мс = 1 секунда. Ключ -n задает количество повторений 20 минут х 60 секунд = 1200 + 1 (т.к. первый пинг возвращается менее чем через 1 мс). А конструкция > nul говорит интерпретатору что стандартный вывод будет направляться в nul дабы избавиться от ненужного вывода на экран.
Происходит вызов программы rundll32.exe, которая позволяет выполнить подпрограмму из динамической библиотеки. В данном случае SetSuspendState с нужными нам параметрами. Подробное описание в MSDN.
Следует заметить, что если у вас включен гибридный режим сна (Hibernate), то войдет он именно в этот режим. Отключить его можно запустив от имени администратора следующее:
Запуск моего любимого интернет радио через Winamp в отдельном потоке.
Заблокировать рабочую станцию (WIN + L).
Гибридный режим сна (Hibernate).
Старая шутка с включением режима мыши для левши (меняются левая и правая кнопка мыши).
Отменить шутку с мышкой можно вызвав диалог настройки мыши и отключив эту функцию.
Переместить курсор в левый верхний угол.
Расположить все не свернутые окна каскадом.
Расположить все не свернутые окна по вертикали.
Еще много интересного можно найти на просторах интернета и придумать, вспоминая документацию по WinAPI функциям.
Есть всем известное выражение которое многим нравится:
Немного истории:
Еще в далёком 2003 году для выключения ПК по таймеру на скорую руку писалась простенькая программка. Писал сам, ибо знакомых программистов и доступа к интернету в то время у меня не было. Уверен, что много таких же «домашних программистов», которые купив или нарезав на болванки MSDN изучали программирование под Windows ночи напролёт. По случаю написания статьи отрыл ее в старом архиве на родительском ПК. Выглядела она незатейливо, но задачу свою выполняла. Как оказалось, даже сейчас ей пользуются несколько моих знакомых.
На чём она была написана уже и не помню (VC, VB, Delphi или Assembler). Размер ее был тоже не большим, но все же 16 166 против 47 байт не идут ни в какое сравнение.
И когда пару дней назад мне понадобился такой же функционал я полез искать похожий софт. Каково же было моё разочарование, когда я нашел кучу программ в среднем от 1,1 Мб до огромных монстров 15,2 Мб размером. Естественно совесть мне не позволила даже в песочнице запустить эту ересь. Понимая что мне нужна задержка выполнения в 20 минут и вызов одной лишь процедуры я вспомнил про rundll32.exe, полез в инет и не ошибся. В итоге решение было найдено за 1 минуту.
Мораль:
Зачастую для решения простых задач нам не нужен сторонний софт. Достаточно просто зайти в поисковик и найти простое решение задачи, которое в 98,785% уже есть в свободном доступе. Конечно же нужно упомянуть и другой путь, для настоящих ИТ-шников, включить воображение, зайти в мануалы MSDN и воспользоваться готовым функционалом ОС. Согласитесь, приятно пользоваться простыми и элегантными решениями, но вдвойне приятнее когда до их решения ты дошел своим умом.
Как перевести компьютер в режим сна из командной строки / меню «Выполнить»?
Я знаю, что почти все в Windows, например, открытие любого приложения, можно выполнить из командной строки или из меню « Выполнить» .
Как я могу перевести компьютер в режим сна или выключить его ? Какая команда для этого?
Вы найдете, shutdown.exe чтобы быть вашим другом.
Другие удобные команды смотрите в этом посте:
Блокировка рабочей станции
Кажется, что спать на компьютере проблематично, если включен режим гибернации.
Копирование из других ответов:
Вы можете попробовать PsShutdown или:
Команда rundll32.exe powrprof.dll, SetSuspendState 0,1,0 для спящего режима верна — однако она будет переходить в спящий режим вместо спящего, если вы не отключите спящий режим.
Вот как это сделать:
Перейдите в меню «Пуск» и откройте командную строку с повышенными правами, введя cmd.exe, щелкнув правой кнопкой мыши и выбрав «Запуск от имени администратора». Введите следующую команду:
Методы, опубликованные другими людьми, работают некорректно, если на компьютере включен режим гибернации, компьютер не будет активирован на клавиатуре или, что более важно, не активируется на запланированном задании.
Одним из инструментов Sysinternals Microsoft является PsShutdown с помощью команды psshutdown -d -t 0 он будет правильно спать, не спящий режим , компьютер
rundll32.exe powrprof.dll,SetSuspendState 0,1,0 Правильная команда для сна верна — однако она будет переходить в спящий режим вместо сна, если вы не выключите спящий режим.
Вот как это сделать:
Перейдите в меню «Пуск» и откройте командную строку с повышенными cmd.exe правами. Для этого введите правой кнопкой мыши и выберите « Запуск от имени администратора» . Введите следующую команду:
NirCmd работает в Windows 8 (я полагаю, что это также работает и в Windows 7) → http://www.nirsoft.net/utils/nircmd.html
Команда есть standby , но она переводит компьютер в спящий режим.
Если у вас включен гибридный сон, он будет работать; т.е. он переводит компьютер в спящий режим и копирует память на диск в случае потери питания.
Посмотрите бесплатную утилиту Wizmo , которая может делать очень много вещей.
Вероятно, вы ищете команду:
Я создал ярлык для rundll32.exe powrprof.dll,SetSuspendState 0,1,0 (также пробовал с 0,0,0), но запуск ярлыка, похоже, перевел мой компьютер в спящий режим. Я не мог разбудить ПК с помощью клавиатуры; Пришлось нажимать кнопку включения, и на ПК показывались сообщения системной платы и т. Д.
Прочитав документ Windows API , я создал очень простую программу, набрав всего 3 строки. Я загрузил исполняемый файл, скомпилированный на эту страницу (нажмите «SleepTest.exe») , но через некоторое время этот файл может быть удален (это бесплатный сайт для размещения файлов, который я только что нашел при быстром поиске в Google).
Если вы не доверяете мне (что вполне нормально) или файл был удален, вы, конечно, можете скомпилировать код самостоятельно. Вам необходимо добавить «PowrProf.lib» к дополнительным зависимостям компоновщика.
rundll32.exe powrprof.dll,SetSuspendState 0,1,0 кажется, делает то же самое, но каким-то образом вышеприведенная программа не переводит компьютер в спящий режим. Я мог мгновенно разбудить компьютер (без сообщений на материнской плате и т. Д.), Нажав любую клавишу на клавиатуре.
Вы можете запустить параметры приостановки или спящего режима из командной строки, как указано ниже и упоминается в этой статье .
Если на вашем компьютере разрешен режим гибернации, то приведенная выше команда инициирует режим гибернации. Если функция гибернации отключена, то она перейдет в режим ожидания. Как другие пользователи ответили ранее, shutdown.exe /? предоставит множество вариантов выключения.
Сначала необходимо отключить Hibernate в Windows, а затем перевести компьютер в состояние сна . Используйте следующие две команды:
и для выполнения обратного действия, гибернации компьютера, используйте команды ниже:
Вот статья об использовании CLI для выключения.
Microsoft предоставляет PsTools, который дает вам отключение CLI вместе с другими полезными инструментами. Вы можете получить это здесь .
у меня работает только QUICK SLEEPER (работает в Windows 7,8,10).
Is there a command line to disable sleep on windows 10?
The help desk software for IT. Free.
Track users’ IT needs, easily, and with only the features you need.
I know the command line to disable hibernation is
powercfg.exe /hibernate off
Is there a comparable command to turn sleep off? I’m remotely managing computers and for some that are new to me, they have sleep enabled. I’d like to run a command next time the machine wakes up that will disable sleep. In the situation I’m in right now, it’s a single machine on the LAN so no other machine to try to send a wake on lan command.
Could be written as a batch script and deployed via GPO, but that would require the machine to restart or the user to log out and in while connected to the domain.
7 Replies
Could be written as a batch script and deployed via GPO, but that would require the machine to restart or the user to log out and in while connected to the domain.
You could create new power plans with the above script by placing something like this before the above batch script lines:
POWERCFG -DUPLICATESCHEME 381b4222-f694-41f0-9685-ff5bb260df2e 381b4222-f694-41f0-9685-ff5bb260aaaa
POWERCFG -CHANGENAME 381b4222-f694-41f0-9685-ff5bb260aaaa «always_on»
POWERCFG -SETACTIVE 381b4222-f694-41f0-9685-ff5bb260aaaa
It copies default profile > renames > then applies it (only needs to apply once)
Edit: Sorry posted this, but now realise this only stops it displaying as an option on the power button.
Edited Jul 30, 2019 at 14:43 UTC
Thanks guys! I’m just interested in the computer not going to sleep when on AC so I can get into it remotely (does win 10 normally wake up overnight to do tasks like updates, etc?).
That 1 line from Pete’s script is what I had tried before seeing the replies (along with the hibernate off command I mentioned).
Powercfg /x -standby-timeout-ac 0
Grim — yes the /? command — loads of things you can do! interesting / frustrating. powercfg /q gives loads of stuff. and it all seems greek / hex to me : )
Cmd sleep windows 10
Рассмотрим основные варианты организации ожидания ( паузы ) в bat / cmd файлах.
Для решения этой задачи в операционных системах, начиная с VISTA, присутствует команда timeout. Так, для ожидания 10 секунд следует выполнить команду.
Если не использовать параметр /NOBREAK, то ожидание может быть прервано нажатием любой клавиши.
Поскольку эта задача вставала перед разработчиками задолго до появления этой утилиты, те, у которых операционная система младше, могут воспользоваться накопившемся опытом.
Для организации паузы есть специальная утилита, входящая в состав Resource Kit (Ресурскита).
Пакеты Microsoft Windows Deployment Kit и Windows Resource Kit бесплатно распространяется microsoft.com. Этот пакет содержит ряд полезных и. как бы так сказать. других утилит.
Если вы уже устали бродить по бескрайним просторам сайта microsoft.com, постоянно возвращаясь на одни и те же страницы, то можете скачать эту утилиту здесь
Как и во многих других случаях, может помочь утилита nircmd.
(На момент написания страницы описание возможностей утилиты было здесь. C этим списком я рекомендую ознакомится, даже если для текущей задачи будет использовано другое решение.)
На просторах интернета можно найти утилиту wait.exe. Точнее, даже несколько разных, включая исходные тексты программы. Поэтому я не привожу здесь параметров вызова, смотрите их описание.
Для организации паузы можно использовать утилиты, ожидающих определенное событие заданное время.
При условии, что событие не наступит, получается ожидание требуемого интервала времени.
Так, паузу можно создать при помощи команды ping:
-n 1 — выполнить один запрос
-w 100000 — ждать ответа 100 секунд
(значение указывается в миллисекундах)
10.10.254.254 — IP адрес, который заведомо не существует в локальной сети (важно!), следовательно, никогда не ответит на ping т. е. событие не наступит.
>nul — перенаправление всего вывода команды ping в никуда.
Еще одно решение — посылать пинг на заведомо существующий адрес — т. е. самому себе. Количество посылаемых пакетов должно быть на единицу больше количества ожидаемых секунд. Так, для ожидания 5 секунд следует выполнить команду:
В том же пакете Ресурскит есть утилита choice, которую при известной доле извращенности можно использовать для тех же целей:
Для любителей экзотики.
Можно вычислить время окончания интервала ожидания и занять чем-то несчастный процессор до наступления этого события. Как результат — пауза организована только средствами bat / cmd.
Привожу слегка исправленный пример, взятый с сайта http://www.oszone.net.
0,-3% :: пауза на 15 секунд call :sleep 15 :: Другие действия echo Сейчас %time:
0,-3% pause goto :EOF :sleep echo Пауза на %1 секунд. set /a ftime=100%time:
6,-3%%%100+%1 if %ftime% GEQ 60 set /a ftime-=60 :loop set ctime=%time:
6,-3% if /i %ftime% NEQ %ctime% goto :loop exit /b 0
Данная процедура позволит организовать задержку в выполнении. Время ожидания должно быть меньше 60 сек.
Для вопросов, обсуждений, замечаний, предложений и т. п. можете использовать раздел форума этого сайта (требуется регистрация).
Новый раздел о средствах командной строки в рамках этого же проекта расположен здесь