千家信息网

java启动dos命令收集笔记一

发表于:2024-10-19 作者:千家信息网编辑
千家信息网最后更新 2024年10月19日,java启动dos命令收集信息笔记一import java.io.BufferedReader;import java.io.IOException;import java.io.InputStrea
千家信息网最后更新 2024年10月19日java启动dos命令收集笔记一

java启动dos命令收集信息笔记一

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStream;

import java.io.InputStreamReader;

import java.util.ArrayList;

import java.util.List;


import org.testng.annotations.Test;


public class Person {

@Test //使用testng作为入口

public void doscmd() throws InterruptedException

{

System.out.println(System.getProperty("os name")); //判断当前系统

Person p = new Person();

List dL = p.excmd("adb devices"); //调用函数执行adb devices命令

System.out.println(dL.size());

for (String s:dL) { //通过增强for循环输出内容。 s--定义变量,dl--为adb devices内容

System.out.println(s); //输出显示

}

}

public List excmd(String cmdString) throws InterruptedException {

List dosCMd = new ArrayList(); //定义一个List集合

Process process = null; //定一个Process ID号

try {

process = Runtime.getRuntime().exec(cmdString); //通过内置函数启动exec命令

InputStream in = process.getInputStream(); //通过输出流输出

BufferedReader inR = new java.io.BufferedReader(new InputStreamReader(in));

String line = null;

while((line = inR.readLine()) != null) //通过while遍历命令行信息

{

dosCMd.add(line);

}

System.out.println("成功取出");

} catch (IOException e) {

System.out.println("数据不能获取");

e.printStackTrace();

}

process.waitFor();

process.destroy();

return dosCMd;

}


0