从Windows中的命令行输出中获取特定单词

时间:2015-03-21 13:53:29

标签: windows batch-file command-prompt

我正在尝试获取当前正在运行的进程的进程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。有没有办法实现这个目标?

2 个答案:

答案 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 |找到