在exe的windows taskmanager中结束/杀死堆积的应用程序/后台进程的脚本

时间:2017-12-19 14:45:05

标签: windows powershell batch-file cmd

我们有一个java web应用程序,我们在其中使用pdfconverter exe。每隔4-5天,exe就会堆积在任务管理器中。至少100多个pdfconverter.exe的后台进程/应用程序堆积如山。 它会停止Web应用程序,并且pdf转换器不起作用。我们必须通过taskmanager手动结束流程。 您是否可以帮助我告诉我是否可以编写任何脚本或自动化程序来监控进程数量并在超过所有进程后终止所有进程。 我想知道可以使用哪个工具来创建脚本。

1 个答案:

答案 0 :(得分:2)

您可以在PowerShell中编写一个脚本来监控有多少进程,如果有超过一定数量的进程则将其终止。 E.g:

$PDFProcesses = Get-Process pdfconverter.exe

if ($PDFProcesses.count -gt 10) { 
    Try {
        $PDFProcesses | Stop-Process -ErrorAction Stop
    } Catch {
        Write-Warning "Stopping via PS failed. Trying Taskkill.."
        Taskkill.exe /im pdfconverter.exe /f
    }
}

然后,您可以将其作为计划任务运行,以便在您认为合适的任何时间间隔内监控问题。