我正在尝试获取当前正在运行的进程的进程ID。我已经给出了查询并使用wmic命令过滤了特定进程。但我无法单独获取进程ID。
有没有办法单独将进程ID作为输出?
我的输出
输入:
wmic process where caption="tomcat6.exe" get commandline,processid | find "GxTomcatInstance"
输出:" C:\ Program Files \ Apache \ bin \ tomcat6.exe" // RS // GxTomcatInstance001 5260
我同时获得了processID和命令行,但我只需要进程ID。有没有办法实现这个目标?
答案 0 :(得分:1)
通常要获取命令的输出,请使用for /f
命令。
语法有点棘手,特别是当wmic
加入时,这应该是:
for /f "tokens=3 delims=," %%i in ('wmic process where caption^="tomcat6.exe" get commandline^,processid /format:csv ^|find "GxTomcatInstance" ') do set /a pid=%%i
答案 1 :(得分:0)
您要求使用命令行。
wmic进程caption =" tomcat6.exe"获取命令行,processid |找到