На этот вопрос уже есть ответ здесь:
Моды, пожалуйста, удалите дубликат тега из этого. Я объяснил это ниже:
Не дубликат «Двойной» вопрос не затрагивает фактор времени - что является настоящей проблемой здесь.
Я хочу перевести компьютер с Windows 7 в спящий режим через 10 часов после завершения загрузки. Когда я выполню это:
shutdown -h -t 36000
Все, что я получаю, это текст справки о завершении работы Не имеет значения, нахожусь ли я в админке или нормально для приглашения cmd. Я что-то упускаю? Я пробовал -t 36000
только с теми же результатами. То же самое с /
вместо -
.
Так что либо: а) это не работает, либо б) есть забавный способ рассказать мне об этом. Настройки управления питанием мешают этой команде?
Обновление: /s
коммутатор выключает компьютер (не в спящем режиме). /h
является действительным переключателем. Вот скриншот моей команды:
Ответы:
-h
Переключатель используется для выключения компьютера на Linux, а не Windows. Правильная команда для выключения компьютера Windows через 7 часов:Windows покажет диалоговое окно с обратным отсчетом времени, пока компьютер не выключится.
Но вы хотите перейти в спящий режим, а не завершить работу, и, к сожалению,
/h
и/t
переключатель не работают вместе. В качестве обходного пути вы можете использоватьat
команду, чтобы запланироватьshutdown /h
запуск в определенное время. Например, сейчас в моем часовом поясе 15:00, поэтому через 10 часов будет 1:00. Чтобы запланировать переход в спящий режим, я бы запустил:Он использует 24-часовой формат записи времени, поэтому, если вы хотите, чтобы он перешел в спящий режим в 13:00, вы должны выполнить:
Обратите внимание, что хотя вам не требуются права администратора для запуска
shutdown
команды в установках Windows по умолчанию, они нужны для этойat
команды.источник
/t 36000
переключатель, команда работает. Я добавлю обходной путь к своему ответу.at
команда отказывается запускаться, заявляя, что она устарела и заменена наschtasks
. Жалость.Не похоже, что опция -t поддерживается с опцией -h для выключения.
Под Windows 7 вы можете дублировать то, что вы пытаетесь сделать, с помощью скрипта .bat, содержащего следующее:
Это приведет к немедленному выходу компьютера из спящего режима по истечении времени ожидания.
источник
timeout /t 36000 /nobreak & shutdown /h
конечно, если вы создадите пакетный файл, чтобы упростить его, вы должны заменить тайм-аут%1
таким, чтобы он был универсальным.&
версией; это немедленно отключит вас (вы отменяете только ожидание). С помощью пакетного файла вы можете нажать,Ctrl+Break
и CMD спросит, хотите ли вы завершить пакетный файл (и, таким образом, прервать завершение работы) или продолжить его. Таким образом, у вас есть выбор поведения. Или, вы можете написать более пакетный файл с помощьюchoice
иtimeout
вообще пропустить :choice /n /t 3600 /d Y /m "Abort hibernate?" & if errorlevel 2 shutdown -h
(однако он не показывает оставшееся время и ограничен 9999 секундами - для многочасового, просто используйтеat
).timeout /t 36000 /nobreak && shutdown -h
- это остановится, если вы отмените таймаут. Только с одним амперсандом он тогда выполнит вторую команду.shutdown /h
. Обратите внимание/h
, нет-h
.PsShutdown от Sysinternals может переводить компьютер в спящий режим по истечении указанного промежутка времени.
источник
sysinternals
ссылку