在windows系统下查询进程的pid,关闭进程,打开某个软件都要使用java中的Runtime.getRuntime().exec(cmd)。其中的cmd就是cmd指令。以下的所有指令中的chrome.exe都可以替换为你想查询、关闭或打开的进程。
执行的代码为:
public void search(String name) {
String cmd = "从下面介绍获取";
BufferedReader bufferedReader = null;
try{
Process process = Runtime.getRuntime().exec(cmd);
System.out.println(cmd);
bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String str;
while ((str = bufferedReader.readLine()) != null){
build.append(str);
}
System.out.println(build.toString());
//输出的结果就是下面cmd中的内容
}catch (IOException e){
System.out.println(e.toString());
}finally {
try {
bufferedReader.close();
} catch (IOException e) {
System.out.println(e.toString());
}
}
}
1.查询进程的pid
tasklist /fi "imagename eq chrome.exe" /fo list
chrome.exe的所有信息都可以获取到
2.关闭进程有3种方法
(1)根据进程名称结束:taskkill /im chrome.exe
(2)根据pid结束:taskkill /pid 5168 -t -f
-t表示结束该进程 -f 表示结束属于该进程的子进程
(3)wmic process where name="chrome.exe" call terminate
(4)ntsd -c q -p [PID进程码]
暂时未测试通过,等有时间再试一下
3.启动应用
cmd.exe /c start chrome
这时候会打开一个chrome窗口