Windowsで指定秒・指定分後にスリープするバッチファイル

Batch File to Put Windows to Sleep After a Specified Number of Seconds or Minutes
Windowsで指定秒・指定分後にスリープするバッチファイル | 烏野の箱庭
読了目安:約4分

概要

Windowsで指定秒・指定分後にスリープするバッチファイル
記事更新: 2026/07/17
2013/12/28

「Windowsで指定秒・指定分後にスリープするバッチファイル」についての要点は以下の通りです:

あらすじ (story)  夜中や外出中のレンダリング・画像処理時に使う事のできる「指定時間後にPCを終了させるバッチファイル」の作成方法を紹介。
 Here's how to create a “batch file that shuts down your PC after a specified time,” which you can use for rendering and image processing in the middle of the night or while you're away from home.

 中にパソコンに処理をさせて置いて、処理が終わればパソコンを切るという事がしたい事がよくあるかと思います。ウイルスチェック、レンダリングなど、待ち時間の長い処理をする時にバッチファイルを使います。

 テキストエディタで数行のコマンドを記述して.batという拡張子で保存。あとはバッチファイルのアイコンをダブルクリックするだけなので簡単です。

■30分後にシャットダウンする。

 30分後にシャットダウンなら、以下のようになります。メモ帳で文字と秒数を変更すると指定時間を変更できます。作成したファイルをダブルクリックするとカウントダウンが始まりますが、時間計測中にキーボードを押してしまうとすぐにシャットダウンが始まるので気をつけてください。 

-----------shutdown.bat------------
@echo off
echo "30分後にシャットダウンします"
timeout 1800
shutdown -s
exit
--------------------------------

■1時間半後に休止状態にする。

 実は休止状態、HDDにデータを保存してPCを停止させるほうがよく使います。休止状態からの立ち上がりは早いので現在のwindowsはずっと休止状態で止めているPCも多いかと思います。sleep.batは1時間半後にモードにする休止モードにすることができます。以下のように記述します。

------------sleep.bat-----------
@echo off
echo "1時間半後にsleepします"
timeout 5400
rundll32.exe PowrProf.dll,SetSuspendState
exit
--------------------------------



■指定分後にスリープをさせる。(追記 2026/07/16)

 秒数を指定するので計算が面倒だなと思い、現在は以下のように分数で入力に切り替えています。

------------sleep_minutes.bat-----------
@echo off
set /p minutes="停止する分数を入力してください: "
set /a seconds=%minutes%*60
echo "%minutes%分後にsleepします"
timeout /t %seconds%
rundll32.exe PowrProf.dll,SetSuspendState
exit
--------------------------------

 sleep_minutes.batファイルをダブルクリックして "30" と入力するとカウントダウンが始まります。画面としては以下のような形になります。

-----画面内容--------
停止する分数を入力してください: 30
"30分後にsleepします"

1800 秒待っています。続行するには何かキーを押してください ...
-------------

 これで夜中、寝ている間にバリバリとPCに働かせつつ、仕事が終わればPCを休ませる事ができるはずです。ぜひ試してみてください。