This article describes how to configure scheduled scans using PowerShell cmdlets. To learn more about scheduling scans and about scan types, see Configure scheduled quick or full Microsoft Defender Antivirus scans.
Use PowerShell cmdlets to schedule scans
Use the following cmdlets:
Set-MpPreference -ScanParameters
Set-MpPreference -ScanScheduleDay
Set-MpPreference -ScanScheduleTime
Set-MpPreference -RandomizeScheduleTaskTimes
For more information, see Use PowerShell cmdlets to configure and run Microsoft Defender Antivirus and Defender Antivirus cmdlets for more information on how to use PowerShell with Microsoft Defender Antivirus.
PowerShell cmdlets for scheduling scans when an endpoint is not in use
Use the following cmdlets:
Set-MpPreference -ScanOnlyIfIdleEnabled
For more information, see Use PowerShell cmdlets to configure and run Microsoft Defender Antivirus and Defender Antivirus cmdlets.
Note
When you schedule scans for times when endpoints are not in use, scans do not honor the CPU throttling configuration and will take full advantage of the resources available to complete the scan as fast as possible.
PowerShell cmdlets for scheduling scans to complete remediation
Use the following cmdlets:
Set-MpPreference -RemediationScheduleDay
Set-MpPreference -RemediationScheduleTime
See Use PowerShell cmdlets to configure and run Microsoft Defender Antivirus and Defender Antivirus cmdlets for more information on how to use PowerShell with Microsoft Defender Antivirus.
PowerShell cmdlets for scheduling daily scans
Use the following cmdlets:
Set-MpPreference -ScanScheduleQuickScanTime
For more information about how to use PowerShell with Microsoft Defender Antivirus, see Use PowerShell cmdlets to configure and run Microsoft Defender Antivirus and Defender Antivirus cmdlets.