如何获取空闲时触发的任务列表?

t3c*_*b0t 3 powershell cmd.exe windows-10

有没有办法通过cmdpowershell空闲时触发的任务列表来获取?


为什么我需要它?

svchost.exe当我有一段时间不做任何事情时,我注意到 CPU 消耗 (25%)正在运行。为了确认这一点,我让 sysinternals 的进程资源管理器运行,几分钟后 svchost 出现。我不知道如何追踪它,因为一旦我移动鼠标,它就会消失并停止,所以我无法看到更多细节。

t3c*_*b0t 6

我想我已经找到了:

Get-ScheduledTask | Where-Object { $_.State -ne "Disabled" } | Select-Object TaskName, TaskPath, Triggers | Where-Object { $_.Triggers -match "MSFT_TaskIdleTrigger" }
Run Code Online (Sandbox Code Playgroud)

结果:

TaskName        Triggers                                      TaskPath
  --------        --------                                      --------   
  Installation    {MSFT_TaskLogonTrigger, MSFT_TaskIdleTrigger} \Microsoft\Windows\LanguageComponentsInstaller\ 
  XblGameSaveTask {MSFT_TaskIdleTrigger}                        \Microsoft\XblGameSave\
Run Code Online (Sandbox Code Playgroud)

  • 只是一个小小的改进:你不需要`select-object`,你可以把你的两个`where-object` 合二为一:`Get-ScheduledTask | Where-Object { $_.State -ne "Disabled" -and $_.Triggers -match "MSFT_TaskIdleTrigger"}` (2认同)