blog.bouzuya.net

2012-08-11 Windows環境で分単位のタスクをスケジュールするには

後日、画面から設定する方法や、スクリプトを書いた。

Macのスクリーンショットで1日の作業を記録して動画で振り返り』にあこがれて、Windows環境で同じことをしようと思ったら色々とハマった。

まずWindowsのPrintScreenはクリップボードにコピーするのみで保存してくれない。VBScriptでなんとかならないかと思い、検索してみたが、Internet ExplorerやExcelをCreateObjectしたりであんまり好きになれない状態だった。WinShotがインストールされているので、それのコマンドラインオプションをwinshot.exe -J -D -Xのような形で指定して実行することにした。jpegファイルでDesktop全体を保存し終了する。

これをタスクスケジューラーに登録すれば完成だと思ったら、分単位での実行がうまくできない。登録できるのかもしれないけど、ぼくには画面から登録する方法が分からなかったので、コマンドで登録することにした。

分単位のタスクをスケジュールするには、schtasksコマンドを使えば良い。

5分おきにprint.vbsを呼ぶ例は次のようになる。

schtasks /Create /SC MINUTE /MO 5 /TN TASKNAME /TR C:\Users\user\Dropbox\echo.vbs /ET 23:55 /SD 2012/01/01 /ED 2020/12/31

詳細はschtasks /?を参照。

22 min.