Board logo

标题: WMIC输出是否可以自定义 [打印本页]

作者: everest79     时间: 2007-2-27 01:20    标题: WMIC输出是否可以自定义

wmic process get processid,executablepath

以上两项输出自定义processid为第一列,executablepath为第二列,可否?



@echo off
::view connection by:everest@cn-dos.net
::!executablepath-expand-LO!set adv= wmicprocess where handle="%dtp%" get executablepath|find /v /i "executablepath"
:top
ECHO Simple Netstat 网络连接查看器 timeon:%time:~0,-3%
ECHO --------------------------------------------------------------------------------
ECHO 本机地址/端口 远程地址/端口 连接状态 进程 进程名称
for /f "skip=4 tokens=*" %%i in ('netstat -abn') do (
set nh=%%i x
call set nha=%%nh:]=%%
echo %%i|findstr /b "







不满足的是没有一个简单快捷的方法获取进程完整路径

大家新年好

Last edited by everest79 on 2007-2-27 at 09:57 PM ]

作者: lxmxn     时间: 2007-2-27 01:58
不满足的是没有一个简单快捷的方法获取进程完整路径

  感谢新年作品,获取进程完整的路径可以用WMIC:
wmic process get commandline

作者: oilio     时间: 2007-2-27 02:03
wmic process get commandline,caption
感觉这样看得更清楚一点。

作者: everest79     时间: 2007-2-28 05:28
本来想在执行netstat之前生成当前系统进程path变量表,例如 _pid8=C:\windows\system32\svchost.exe
但使用wmic process get processid,executablepath输出的表格中executablepath始终在pid前边,而路径比较复杂,没办法在for中取得完整路径与pid

for /f "skip=4 tokens=1,2" %%i in ('"wmic process get processid,executablepath"') do set _pid%%j=%%i

请问有没有办法自定义表格输出?
后来打算每行都执行以下代码,但显示速度就有点慢

wmicprocess where handle="%dtp%" get executablepath|find /v /i "executablepath"

作者: everest79     时间: 2007-2-28 20:34
请大家指点

作者: everest79     时间: 2007-3-3 06:06
再请教,呵呵

作者: kinpol     时间: 2008-4-30 20:46
请问 怎么用vc6来调用wmic进行编程,是不是还得windows DDK进行辅助编程??请指教