タスクスケジューラを使う
タスクスケジューラ
Windowsには条件によってタスクを実行してくれるタスクスケジューラという便利なものがあります。
あまり使ってなかったけれど、これを使いこなせれば色々楽になるのではと思い備忘録として書いておきます。
※環境はWindows10
起動
スタート > Windows管理ツール > タスクスケジューラ で起動できます。
タスクスケジューラ ライブラリをクリックすると現在登録されているスケジュールがリスト表示されます。
タスクの作成
右上の「基本タスクの作成」から作成します。 「タスクの作成」からも同様に作成できますが今回は基本タスクの作成で。
タスク名と説明を入力します。
タスクトリガーを設定
今回は毎日で設定します。
実行する時間を設定します。
今回は20:30:00に実行するようにします。
操作内容の設定
プログラムの開始を設定します。
どのプログラムを開始するか設定します。
この例ではエクスプローラーを起動します。
「引数の追加」に開くフォルダパスを設定します。
要約を確認して完了するとタスクが追加されます。
タスクの編集
タスクを右クリックし、プロパティを選ぶとダイアログが表示されます。
ここでは操作タブを選んでPythonのプログラムを実行するように変更します。
「プログラム/スクリプト」にPythonがインストールされているパスを入力します。
C:\Users\ユーザー名\AppData\Local\Programs\Python\Python37\python.exe
「引数の追加」にファイルの置いてあるパスを設定します。
D:\test\create_file.py
create_file.pyは実行した日付のファイルを作成し、日付と時刻を書き込みます。
#! python import datetime # datetimeを取得 dt_today = datetime.datetime.today() # ファイル名を日付から作成 file_name = dt_today.strftime("%Y%m%d.txt") # ファイルオープン f = open('D:\\test\\'+file_name, 'w') # ファイルに書き出し f.write('保存日付は '+ dt_today.strftime("%Y/%m/%d")+' です') f.write('\n保存時刻は '+ dt_today.strftime("%H:%M:%S")+' です') # ファイルクローズ f.close()
テストをしたいときは時間を1分後に設定するか、待ちたくない場合はタスクを右クリックして「実行する」をクリックするとすぐに実行してくれます。
ファイルが作成され、
ファイルに日付と時刻が書き込まれました。
まとめ
タスクスケジューラを使うと色々なことができそうです。
これは使わない手はないですね!