我想使用 CMD 关闭所有打开的窗口(从程序、Windows 资源管理器等...)。我发现最简单的方法不是使用 CMD,而是运行这两个 powershell 命令:
(New-Object -comObject Shell.Application).Windows() | foreach-object {$_.quit()}
Get-Process | Where-Object {$_.MainWindowTitle -ne ""} | stop-process
效果很好,但我不知道如何直接从 CMD 执行它们。我尝试使用以下命令powershell -noexit
执行 powershell 命令并^
忽略一些 cmd 函数,但它不起作用:
powershell -noexit "(New-Object -comObject Shell.Application^).Windows(^) ^| foreach-object {$_.quit(^)}"
powershell -noexit "Get-Process ^| Where-Object {$_.MainWindowTitle -ne ""} ^| stop-process"
而且我不想使用taskkill
命令或创建 .ps1 文件并使用start .ps1
其中任一方式执行它。
答案1
解决宠物食品。
powershell -command "(New-Object -comObject Shell.Application).Windows() | foreach-object {$_.quit()}; Get-Process | Where-Object {$_.MainWindowTitle -ne \"\"} | stop-process"
请注意,这Stop-Process
实际上将结束整个过程。