在命令行上执行命令并在Java中读取控制台输出

时间:2012-05-04 00:11:41

标签: java command-line process

我需要使用Java程序获取服务器的hostId。 Java API中是否有内置的东西可以帮助我做到这一点?

lab.com$ hostid
f9y7777j -> How can I get this using java

2 个答案:

答案 0 :(得分:1)

以下内容允许您运行控制台命令并存储结果: -

 ProcessBuilder pb = new ProcessBuilder("hostid");
 Process p = pb.start();
 BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
 String line = null;
 while ((line = reader.readLine()) != null)
 {
    // Store returned string here.
 }
 reader.close();

答案 1 :(得分:1)

请尝试以下代码:

System.out.println(java.net.InetAddress.getLocalHost().getHostName());