【PowerShell】タスクスケジューラの「コンピュータをAC電源で使用…」のチェックを外す【New-ScheduledTaskSettingsSet】

プロモーションを含みます
プロモーションを含みます
PR

DOS コマンドでは、タスク作成はできるものの、作成済みタスクの「コンピュータを AC 電源で使用している場合にのみタスクを開始する」のチェックを外すコマンドは用意されていない。

PowerShell を利用すれば、以下の設定項目のチェックを外せるようになる。

  • コンピュータを AC 電源で使用している場合にのみタスクを開始する
  • コンピュータの電源がバッテリに切り替わった場合は停止する

まずはスクリプトファイルを用意しよう。

テキストファイルを新規作成し、拡張子を「.ps1」に変更する。

ここでは例として、ファイル名を「AC-power_disable.ps1」とした。

▼ 今回は例として、タスク「Task_A」の設定を修正する。

▼ 目的は、以下画像の電源設定項目(2つ)のチェックを外すことだ。

PowerShellスクリプト

▼ PowerShell スクリプトは以下。

$taskName = "Task_A"
$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries
Set-ScheduledTask -TaskName $taskName -Settings $settings

▼ (参考: VS code 画面)

PowerShell スクリプトを AC-power_disable.ps1 へコピー後、管理者権限で実行しよう。

コマンド解説

New-ScheduledTaskSettingsSet

New-ScheduledTaskSettingsSet は、タスクの設定オブジェクトを作成する PowerShell コマンドレット。

タスクセットを新規に作成したり、既存タスクの更新をすることができる。

-AllowStartIfOnBatteries

コンピュータを AC 電源で使用している場合にのみタスクを開始する」に該当する。

-DontStopIfGoingOnBatteries

コンピュータの電源がバッテリに切り替わった場合は停止する」に該当する。

Set-ScheduledTask

Set-ScheduledTask は、タスクのトリガー、アクション、設定などが変更できる。

また Set-ScheduledTask は、タスクのインスタンスが実行中であっても、タスクの設定内容を変更することができる。この変更は現在のインスタンスには影響しない。(bing AI 調べ)