TSUBOCK★LABO-ツボックラボ-

とあるセキュリティエンジニアの技術メモブログ

MENU

タスクスケジューラで指定した時間に指定したサイトを開くタスクをコマンドで登録する

コロナ禍でリモートワーク中心になっていますが、毎日指定されたサイトに健康状態を入力する必要があり、意識していないとすぐ忘れてしまうので、指定した時間になると指定したサイトを自動で開くようにタスクスケジューラで設定できないかと思い、調べてまとめてみました。

やりたいこと

  • タスクスケジューラで指定したサイトを定期的に開く

  • ↑をcmdを使ってコマンドで実現したい

タスクスケジューラで指定したサイトを定期的に開く

今回は毎日10時にgoogleが開くように設定をしてみたいと思います。

  1. スタートメニューを開いて「タスクスケジューラ」を入力し、検索結果から選択して開きます。

  2. 上部の[操作]タブまたは右ペインにある「基本タスクの作成」を選択します。

  3. タスクに管理したい名前をつけて[次へ]を選択します。

    設定値例:毎日10時_google起動

  4. トリガーにタスクの実行したいタイミングを設定します。

    設定値例:毎日

  5. [トリガー] > [毎日] に開始したい時間が表示されます。

    設定値例:開始 2021/02/08 10:00:00 間隔 1

  6. [操作]でなにがしたいかを指定します。

    設定値例:プログラムの開始

  7. [操作] > [プログラムの開始]で実行したいプログラム/スクリプトがおいてあるパスを指定します。今回はブラウザを起動したいので、使いたいブラウザを選択します。下記例はGoogle Chromeの場合。

"C:¥Program Files (x86)¥Google¥Chrome¥Application¥chrome.exe”

​ Firefoxの場合は以下になります。

"C:¥Program Files¥Mozilla Firefox¥firefox.exe"

​ 引数に開きたいサイトを指定します。指定したら[次へ]を選択します。

  1. 設定内容に問題がないか確認をし、[完了]を選択します。

タスクスケジューラの設定を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

参考文献

タスクスケジューラを使用してスケジュールでURLを開く方法

タスクスケジューラ登録/削除コマンド

Macでコマンドから指定したURLをChromeで開く