毎日決められた時間にコンピュータをスリープにする

 最後にタスクスケジューラー機能を使って、ちょっとしたカスタマイズを行ないましょう。今回は“毎日決められた時間にコンピュータをスリープにする”というタスクを作成します。一見するとタスクスケジューラーと「shutdown.exe」を組み合わせることで簡単に実行できそうに見えますが、ポイントは「スリープ状態」。同コマンドはシャットダウンや再起動、休止状態を実行できますが、スリープ状態にすることはできません。

 そこでお使い頂きたいのが「PsShutdown」。以前からWindows関連ツールを公開し、今ではMicrosoftの一コンテンツとなったWindowsSysinternalsのひとつです。PsShutdown は2006年を最後に更新されていませんが、Windows 7でも使用できるのでご安心ください。同コマンドを「%windir%System32」フォルダに入れた状態でタスクスケジュールを作成するには、以下のコマンドを実行します。

schtasks /Create /ru "SYSTEM" /TN "GoSleep" /TR "%windir%\System32\psshutdown.exe -d -t 0" /sc weekly /d "MON TUE WED THU FRI" /et 18:00

これで、月曜から金曜までの18時に「psshutdown.exe」が実行され、コンピュータがスリープモードに移行します。筆者が確認した限りですが、同コマンドは万能ではなく、手持ちのデスクトップコンピュータではスリープモードではなく、シャットダウンになってしまいましたが、ノートPCでは正しく実行されました(図12~15)。

図12 公式サイトに用意された「PsShutdown」のページ http://technet.microsoft.com/en-us/sysinternals/bb897541.aspxにアクセスし、最新版をダウンロードします

図13 「PsShutdown」は「PsTools」の一部ですので、圧縮ファイル内から「psshutdown.exe」を「%windir%\System32」フォルダにコピーします

図14 あらかじめ「psshutdown.exe」を実行し、ライセンス条項を表示させましょう。内容を確認し、問題がないようであれば<Agree>ボタンをクリックしてください

図15 「schtasks /Create /ru "SYSTEM" /TN "GoSleep" /TR "%windir%\System32\psshutdown.exe -d -t 0" /sc weekly /d "MON TUE WED THU FRI" /et 18:00」と入力して[Enter]キーを押せば、タスクが作成されます

阿久津良和(Cactus