Powershell 试图按名称和CPU时间终止进程

Powershell 试图按名称和CPU时间终止进程,powershell,cmd,explorer,Powershell,Cmd,Explorer,我正在尝试的是在不终止整个进程的情况下关闭explorer.exe的窗口,因为这将重新启动整个任务栏。到目前为止,我只能通过与windows explorer.exe分开的CPU时间来识别它,因为它是在之后启动的 是否有一个PowerShell脚本或命令可以帮助我实现这一点?仔细查看Shell.COM对象。 方法“Windows()”为每个打开的资源管理器窗口返回一个对象。 您可以调用这些对象的“Quit()”方法来关闭窗口,下面是一个示例: $explorerPathYouWantToKill

我正在尝试的是在不终止整个进程的情况下关闭explorer.exe的窗口,因为这将重新启动整个任务栏。到目前为止,我只能通过与windows explorer.exe分开的CPU时间来识别它,因为它是在之后启动的


是否有一个PowerShell脚本或命令可以帮助我实现这一点?

仔细查看Shell.COM对象。 方法“Windows()”为每个打开的资源管理器窗口返回一个对象。 您可以调用这些对象的“Quit()”方法来关闭窗口,下面是一个示例:

$explorerPathYouWantToKill = "C:\"

$shellApp = New-Object -COM 'Shell.Application'
($shellApp.Windows() | Where-Object {$_.LocationURL -eq "file:///$($explorerPathYouWantToKill.Replace('\','/'))"}) | Foreach {
    $_.Quit()
}