Linux下获取进程PID并杀掉进程

来源:互联网 发布:农村淘宝电商培训资料 编辑:程序博客网 时间:2024/06/05 09:04
话不多说,直接上代码!
public class CloseLinuxProcess {public static void main(String[] args) {String PID = getPID("java -jar test.jar");closeLinuxProcess(PID);}/** * 获取Linux进程的PID * @param command * @return */public static String getPID(String command){BufferedReader reader =null;try{//显示所有进程Process process = Runtime.getRuntime().exec("ps -ef");reader = new BufferedReader(new InputStreamReader(process.getInputStream()));String line = null;while((line = reader.readLine())!=null){if(line.contains(command)){System.out.println("相关信息 -----> "+command);String[] strs = line.split("\\s+");return strs[1];}}}catch(Exception e){e.printStackTrace();}finally{if(reader!=null){try {reader.close();} catch (IOException e) {}}}return null;}/** * 关闭Linux进程 * @param Pid 进程的PID */public static void closeLinuxProcess(String Pid){Process process = null;BufferedReader reader =null;try{//杀掉进程process = Runtime.getRuntime().exec("kill -9 "+Pid);reader = new BufferedReader(new InputStreamReader(process.getInputStream()));String line = null;while((line = reader.readLine())!=null){System.out.println("kill PID return info -----> "+line);}}catch(Exception e){e.printStackTrace();}finally{if(process!=null){process.destroy();}if(reader!=null){try {reader.close();} catch (IOException e) {}}}}}

1 0
原创粉丝点击