CMD魔法堂:获取进程路径和PID值的方法集
一、前言
在开发发布更更新工具——更新Weblogic应用模块时,了解到更新Weblogic应用需要先关闭Weblogic应用窗口然后是清缓存、更新应用文件,最后再重启Weblogic应用窗口。所以第一步需要获取Weblogic应用窗口的PID然后将其kill掉。下面将记录曾经的各种尝试,以便日后查阅。
二、wmic命令
windows自带功能,功能十分强大
示例1——获取所有进程信息:
wmic process
示例2——指定进程执行路径获取PID信息:
vmic process where ExecutablePath^="c:\\test\\test.exe" get ExecutablPath^,Handle
1. 实践经验
上述方法无法通过Weblogic应用的startWebLogic.cmd的全路径作为查询条件来获取PID,由于startWebLogic.cmd内是通过java命令启动应用的,所以ExecutablePath将指向JAVA_HOME下的java.exe文件。
2. 参考
http://www.2cto.com/Article/201008/54693.html
http://www.360doc.com/content/10/0509/21/493367_26836956.shtml
3. 其他获取进程路径的方法
vbs
c++:java需要通过jni来调用。
三、netstat -aon | findstr 端口号
示例1:
netstat -aon | findstr 7001
若存在占用该端口号的进程,则会返回PID;否则返回空。
1. 实践经验
现在项目就是用这种方式的。