次の方法で共有


PowerShell を使用してウイルス対策スキャンをスケジュールする

適用対象:

プラットフォーム

  • Windows
  • Windows Server

この記事では、PowerShell コマンドレットを使用してスケジュールされたスキャンを構成する方法について説明します。 スキャンのスケジュール設定とスキャンの種類の詳細については、「スケジュールされたクイックスキャンまたは完全なMicrosoft Defenderウイルス対策スキャンを構成する」を参照してください。

PowerShell コマンドレットを使用して毎日のクイック スキャンをスケジュールする

次のコマンドレットを使用します。

Set-MpPreference -ScanScheduleQuickScanTime

注:

時刻の値は、午前 0 時 (午前 00:00 または午前 12:00) を過ぎた分数として表されます。たとえば、120 は午前 2 時に相当します。 スケジュールは、スキャンが実行されているデバイスのローカル時刻に基づいています。

毎日のクイック スキャンを設定するには、午後 12 時に Windows クライアントで実行します。 (720). この例では、今日では多くのデバイスが時間外 (ノート PC やタブレットなど) でオフになっているため、ランチタイムを使用します。

Set-MpPreference -ScanScheduleQuickScanTime 720

毎日のクイック スキャンを無効にするには、この値を 0 に設定します

Set-MpPreference -ScanScheduleQuickScanTime 0

PowerShell コマンドレットを使用して、毎週のクイック スキャンまたはフル スキャンをスケジュールする

次のコマンドレットを使用します。

Set-MpPreference -ScanParameters
Set-MpPreference -ScanScheduleDay
Set-MpPreference -ScanScheduleOffset

ヒント

ScanScheduleTime の代わりに ScanScheduleOffset を使用することをお勧めします。

-ScanParameters は、スケジュールされたスキャン中に使用するスキャンの種類を指定します。 このパラメーターの有効な値は次のとおりです。

1: クイック スキャン

2: フル スキャン

-ScanScheduleDay

スケジュールされたスキャンを実行する曜日を指定します。 または、スケジュールされたスキャンに対して毎日指定するか、一切指定しないでください。 このパラメーターの有効な値は次のとおりです。

0: 毎日

1: 日曜日

2: 月曜日

3: 火曜日

4: 水曜日

5: 木曜日

6: 金曜日

7: 土曜日

8: 決して

既定値は 8 で、決してありません。 値 8 を指定した場合、または値を指定しない場合、Windows Defender はスケジュールされたスキャンを実行しません。

-ScanScheduleOffset

この設定を使用すると、スケジュールされたスキャンを実行するように午前 0 時から数分後に構成できます。 エンドポイントのローカル時刻は、スキャンがいつ発生するかを判断するために使用されます。 この設定を有効にすると、指定した時刻にスケジュールされたスキャンが実行されます。 この設定を無効にした場合、または有効にしない場合、スケジュールされたスキャンは既定で午前 0 時から 2 時間後 (120 分) に実行されます。

たとえば、毎週水曜日の午後 12:00 (ランチタイム) に実行されるクイック スキャンの毎週のスケジュールされたスキャンを設定します。

Set-MpPreference -ScanParameters 1
Set-MpPreference -ScanScheduleDay 4
Set-MpPreference -ScanScheduleOffset 720

ヒント

Real-Time Protection を有効にし、Cloud Protection を有効にし、Cloud Protection バックエンドへのネットワーク接続を持つクイック スキャンのスケジュールされたスキャンを設定することをお勧めします。

PowerShell コマンドレットを使用して、スケジュールされたスキャンの一般的な設定を設定する

説明 設定 PowerShell コマンドレット
スキャンを実行する前にセキュリティ インテリジェンスのUpdatesを確認する 無効/未構成 (既定値) Set-MpPreference -CheckForSignaturesBeforeRunningScan Boolean
例: Set-MpPreference -CheckForSignaturesBeforeRunningScan $False
スキャンを実行する前にセキュリティ インテリジェンスのUpdatesを確認する 無効/未構成 (既定値) Set-MpPreference -CheckForSignaturesBeforeRunningScan Boolean
例: Set-MpPreference -CheckForSignaturesBeforeRunningScan $False
タスク時間のスケジュールをランダム化する 無効/未構成 (既定値) Set-MpPreference -RandomizeScheduleTaskTimes Boolean
物理デバイスの例: Set-MpPreference -RandomizeScheduleTaskTimes $False
Virtual Machines (VM) または仮想デスクトップ インフラストラクチャ (VDI) または Azure Virtual Desktop (AVD) の例: Set-MpPreference -RandomizeScheduleTaskTimes $True
注: "Scheduler Randomization Time" も構成されていない場合、既定のランダム化時間は、指定した開始時刻から 30 分以内です。
注 2: スケジュールされたスキャンに適用されます。
スケジューラのランダム化時間 0/未構成 (既定、スケジュールされたタスクはランダム化されません) Set-MpPreference -SchedulerRandomizationTime UInt32
例: -SchedulerRandomizationTime 1 Set-MpPreference
注: [タスク時間のランダム化] が [未構成] で 、[タスク時間のランダム化] も [未構成] に設定されている場合、システムは、特定の開始時刻から 30 分以内に既定の動作を使用します。 注: この設定を有効にする場合は、1 から 23 までの時間でランダム化ウィンドウを選択する必要があります。
注 2: スケジュールされたスキャンに適用されます。
平均 CPU 負荷率 50/未構成 (既定値) Set-MpPreference -ScanAvgCPULoadFactor Byte
例: -ScanAvgCPULoadFactor 50 Set-MpPreference
注: 既定値は 50 です。 許容される値は 5 から 100 です。
注 2: 設定した値が小さいほど、スキャンにかかる時間は長くなります。
注 3: ScanOnlyIfIdleEnabled と DisableCpuThrottleOnIdleScans の両方が有効になっている場合、ScanAvgCPULoadFactor の値は無視されます。
デバイスがオンになっているが使用中ではない場合にのみスケジュールされたスキャンを開始する True/Not Configured (既定値) Set-MpPreference -ScanOnlyIfIdleEnabled Boolean
たとえば、Set-MpPreference -ScanOnlyIfIdleEnabled $True注: スケジュールされたスキャンに適用されます。
アイドル スキャンで CPU スロットルを無効にする 有効/未構成 (既定値) Set-MpPreference -DisableCpuThrottleOnIdleScans Boolean
たとえば、Set-MpPreference -DisableCpuThrottleOnIdleScans $Trueアイドル状態は、CPU 使用率の 90% 以下を意味します
低 CPU 優先度を有効にする 無効/未構成 (既定値) Set-MpPreference -EnableLowCpuPriority Boolean
例: -EnableLowCpuPriority $False Set-MpPreference
キャッチアップ フル スキャンを無効にする 無効/未構成 (既定値) Set-MpPreference -DisableCatchupFullScan Boolean
例: -DisableCatchupFullScan $True Set-MpPreference
キャッチアップ クイック スキャンを無効にする 無効/未構成 (既定値) Set-MpPreference -DisableCatchupQuickScan Boolean
例: -DisableCatchupQuickScan $True Set-MpPreference
バッテリ電源でフル スキャンを有効にする 無効/未構成 (既定値) Set-MpPreference -EnableFullScanOnBatteryPower Boolean
例: -EnableFullScanOnBatteryPower $False Set-MpPreference

詳細については、「PowerShell コマンドレットを使用して Microsoft Defender ウイルス対策を構成および実行する」および「Defender ウイルス対策 コマンドレット 」を参照してください。

修復を完了するためのスキャンをスケジュールするための PowerShell コマンドレット

次のコマンドレットを使用します。

Set-MpPreference -RemediationScheduleDay
Set-MpPreference -RemediationScheduleTime

関連項目

Microsoft Defenderウイルス対策スキャンの問題のトラブルシューティング

PowerShell コマンドレットを使用して、Microsoft Defender ウイルス対策を構成および管理する

PowerShell コマンドレットを設定して、ウイルス対策Microsoft Defender構成および管理する

特定の PowerShell 関数をDefender ウイルス対策する

ヒント

さらに多くの情報を得るには、 Tech Community 内の Microsoft Security コミュニティ (Microsoft Defender for Endpoint Tech Community) にご参加ください。