【前言】被某个网上的人恶心了一下,希望他已经不要到此处,更不要留下什么污言杂语。不欢迎!
【正文】实现要点
1. java调用shell命令(ps),并处理命令的返回结果
2. ps -ef | grep manager | grep -v grep | awk '{print $2}' 可以得到manager进程的PID
注意,这里会有一个问题,grep manager会将一些带有manager关键字的其他进程也找出来,导致错误,稍微正确一些的是:
ps -ef | grep 'manager$' | grep -v grep | awk '{print $2}'
用正则表达式限制一下要以manager结尾
3. ps -o etime -p [pid] 可以得到指定pid的进程的已经运行的时间
注意,在HP和HPAT机型上,需要设置环境变量UNIX95=1才能使用ps -o选项。其他(Linux、SUN、IBM)上不需要设置该环境变量。