直接帖原码@H_301_1@
@H_301_1@
tasklist /nh /fo csv /fi "imagename eq cmd.exe" /fi "windowtitle eq C:/WINDOWS/system32/cmd.exe - ./startManagedWebLogic ProxyServer http://168.9.120.61:7001" >tpid.txt解释一下这句。@H_301_1@
这是一个找进程号的批处理,如果宕机了,我们先把服务关掉再重启,这里有一个问题,windowtitle 后面的@H_301_1@
是窗口标题,因为进程名都是cmd.exe.会有多个cmd.exe不好判断,只好判断cmd.exe的标题了,@H_301_1@
看上面是两个cmd.exe;weblogic的标题名跟下面一个不一样,我们只要把这个标题加入上面的代码,就能找到我们要杀掉的服务了。@H_301_1@
上面的结果是先把他输出到tpid.txt文件中,看看输出的格式吧@H_301_1@
"cmd.exe","2604","RDP-Tcp#1","0","3,220 K"@H_301_1@
前面第一个是进程名,weblogic启动是一个cmd.exe,第二个就是进程号,我们把他弄出来就可以用taskkill 来杀了,@H_301_1@
for /f "tokens=2 delims=," %%i in (tpid.txt) do (echo %%~iset pid=%%~i)这一句就是读取刚才的文件,把进程号取出来给变量pid;@H_301_1@