コロナ禍でリモートワーク中心になっていますが、毎日指定されたサイトに健康状態を入力する必要があり、意識していないとすぐ忘れてしまうので、指定した時間になると指定したサイトを自動で開くようにタスクスケジューラで設定できないかと思い、調べてまとめてみました。
やりたいこと
タスクスケジューラで指定したサイトを定期的に開く
↑をcmdを使ってコマンドで実現したい
タスクスケジューラで指定したサイトを定期的に開く
今回は毎日10時にgoogleが開くように設定をしてみたいと思います。
スタートメニューを開いて「タスクスケジューラ」を入力し、検索結果から選択して開きます。
上部の[操作]タブまたは右ペインにある「基本タスクの作成」を選択します。
タスクに管理したい名前をつけて[次へ]を選択します。
設定値例:
毎日10時_google起動
トリガーにタスクの実行したいタイミングを設定します。
設定値例:毎日
[トリガー] > [毎日] に開始したい時間が表示されます。
設定値例:開始
2021/02/08 10:00:00
間隔1
日[操作]でなにがしたいかを指定します。
設定値例:プログラムの開始
[操作] > [プログラムの開始]で実行したいプログラム/スクリプトがおいてあるパスを指定します。今回はブラウザを起動したいので、使いたいブラウザを選択します。下記例はGoogle Chromeの場合。
"C:¥Program Files (x86)¥Google¥Chrome¥Application¥chrome.exe”
Firefoxの場合は以下になります。
"C:¥Program Files¥Mozilla Firefox¥firefox.exe"
引数に開きたいサイトを指定します。指定したら[次へ]を選択します。
- 設定内容に問題がないか確認をし、[完了]を選択します。
タスクスケジューラの設定をcmdを使ってコマンドで実現したい
上記をGUIからポチポチやるのめんどくさいですよね。ってことで、cmdで実行できるようにしてみました。
$ schtasks /Create /SC Daily /TN google_daily /TR "C:¥Program Files (x86)¥Google¥Chrome¥Application¥chrome.exe https://www.google.com" /ST 10:00
これでワンライナーで設定ができます。
参考までに引数についてですが、
/Create:schtasksコマンドで実行したい作業を指定します。今回はタスクの新規作成なので、
Create
を指定します。/SC:スケジュールの頻度を指定できます。今回は毎日起動したいので、
Daily
を指定します。/TN:タスクスケジュールを一意に識別するための任意の名前を指定できます。今回は適当に
google_daily
としてみました。/TR:タスクスケジューラで実行したいプログラムのパスを指定します。引数が必要であれば、ダブルクオートで囲って、実行プログラムパスの後にスペースを入れて引数を書いていきます。
/SD :タスクスケジュールを開始したい日を指定します。ここは省略可能です。
/ST:タスクの実行時間を指定します。今回は毎日10時に実行させたいので
10:00
としています。
ちなみに、タスク削除をコマンドラインで実行する場合は
$ chtasks /Delete /TN google_daily
で一発で削除が可能です。
おまけ(Mac/Linuxの場合)
MacやLinuxの場合、crontab で上記と同様のことを指定します。
下記の例は平日毎日10時にchromeブラウザでgoogleを開く設定です。
00 10 * * MON-Fri open -a '/Applications/Google Chrome.app' https://www.google.com/
上記をcrontabに設定してください。
$ crontab -e