方法一:
public static void main(String[] args)
{
InputStream ins = null;
String[] cmd = new String[]{ "cmd.exe", "/C", "ipconfig" };
try
{
Process process = Runtime.getRuntime().exec(cmd);
// cmd 的信息
ins = process.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(
ins));
String line = null;
while ((line = reader.readLine()) != null)
{
// 输出
System.out.println(line);
}
int exitValue = process.waitFor();
System.out.println("返回值:" + exitValue);
// 关闭
process.getOutputStream().close();
}
catch (Exception e)
{
e.printStackTrace();
}
方法二:
class StreamDrainer implements Runnable
{
private InputStream ins;
public StreamDrainer(InputStream ins)
{
this.ins = ins;
}
public void run()
{
try
{
BufferedReader reader = new BufferedReader(new InputStreamReader(ins));
String line = null;
while ((line = reader.readLine()) != null)
{
System.out.println(line);
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
public class CMD
{
public static void main(String[] args)
{
// String[] cmd = new String[] { "cmd.exe", "/C",
// "wmic process get name" };
String[] cmd = new String[]
{ "cmd.exe", "/C", "ipconfig" };
try
{
Process process = Runtime.getRuntime().exec(cmd);
new Thread(new StreamDrainer(process.getInputStream())).start();
new Thread(new StreamDrainer(process.getErrorStream())).start();
process.getOutputStream().close();
int exitValue = process.waitFor();
System.out.println("返回值:" + exitValue);
}
catch (Exception e)
{
e.printStackTrace();
}
}
}