一、前言                                 

在开发发布更更新工具——更新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. 实践经验

现在项目就是用这种方式的。

发表评论

邮箱地址不会被公开。 必填项已用*标注