public static void getLinuxProcessIdCount(String jarName){
try {
// 构建执行命令的进程
Process process = new ProcessBuilder("ps", "-ef").start();
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
// 逐行读取命令输出
while ((line = reader.readLine()) != null) {
// 检查输出是否包含Jar名称
if (line.contains(jarName) && !line.contains("grep")) {
// 解析出进程ID
String[] parts = line.trim().split("\\s+");
String pid = parts[1];
if (pid.length() > 0){
processIdList.add(pid);
}
System.out.println("Process ID: " + pid);
}
}
// 等待命令执行完成
// process.waitFor();
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
java在linux操作系统根据jar名称获取进程id
最新推荐文章于 2024-04-19 09:41:43 发布