タスクスケジューラーは日時などを条件にタスクを実行する機能ですが、GUIで操作画面までたどり着くのが困難です。
良く使いそうな操作を抜粋してPowerShellのコンソールから実行するワンライナーを集めてみました。
タスクの登録
日次
(例:毎日の03:00)
Register-ScheduledTask -TaskName "MyTask" -Trigger (New-ScheduledTaskTrigger -Daily -At "03:00") -Action (New-ScheduledTaskAction -Execute "notepad.exe") -User "$env:USERNAME" -RunLevel Highest
週一実行
(例:毎週月曜の03:00)
Register-ScheduledTask -TaskName "MyWeeklyTask" -Trigger (New-ScheduledTaskTrigger -Weekly -DaysOfWeek Monday -At "03:00") -Action (New-ScheduledTaskAction -Execute "notepad.exe") -User "$env:USERNAME" -RunLevel Highest
月一実行
(例:毎月1日の03:00)
Register-ScheduledTask -TaskName "MyMonthlyTask" -Trigger (New-ScheduledTaskTrigger -Monthly -DaysOfMonth 1 -At "03:00") -Action (New-ScheduledTaskAction -Execute "notepad.exe") -User "$env:USERNAME" -RunLevel Highest
ログオン時に実行
Register-ScheduledTask -TaskName "MyLogonTask" -Trigger (New-ScheduledTaskTrigger -AtLogOn) -Action (New-ScheduledTaskAction -Execute "notepad.exe") -User "$env:USERNAME" -RunLevel Highest
タスクの削除
Unregister-ScheduledTask コマンドレットを使います。
Unregister-ScheduledTask -TaskName "MyTask" -Confirm:$false
タスク一覧を取得
Get-ScheduledTaskを使います。
Get-ScheduledTask -TaskPath "\"
相変わらずPowerShellのコマンドレットは、長くて入力しずらいですが、入力支援機能を使って頑張って入力することにします。
コメント