【问题标题】:Get particular word from command line output in windows从 Windows 的命令行输出中获取特定的单词
【发布时间】:2015-03-21 13:53:28
【问题描述】:

我正在尝试获取当前正在运行的进程的进程 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 和 commandline ,但我只需要进程 ID。有没有办法做到这一点?

【问题讨论】:

  • 嗯,您的命令明确要求获取 commandline 和 processid,但您只需要 processid。我想知道解决方案是什么......

标签: windows batch-file command-prompt


【解决方案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

【讨论】:

    【解决方案2】:

    您正在询问命令行。

    wmic 进程 where caption="tomcat6.exe" 获取 命令行,processid |找到

    【讨论】:

      猜你喜欢
      • 2013-05-03
      • 1970-01-01
      • 2021-06-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多