public static void main(String[] args) throws IOException,
InterruptedException {
ProcessBuilder pb = new ProcessBuilder("CMD /C dir".split(" "));
pb.redirectErrorStream(true);//so no need to start another thread to purge error stream
final Process p = pb.start();
final StringBuffer sb = new StringBuffer();
Thread t = new Thread(new Runnable() {
@Override
public void run() {
BufferedReader br = new BufferedReader(new InputStreamReader(
p.getInputStream()));
try {
try {
String s = null;
while ((s = br.readLine()) != null) {
sb.append(s+"\n");
}
} finally {
br.close();
}
} catch (Exception ex) {
throw new RuntimeException(ex);
}
}
});
t.setUncaughtExceptionHandler(new UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread t, Throwable e) {
System.out.println(e);
}
});
t.start();
p.waitFor();//blocks
System.out.println("exit val: " + p.exitValue());
System.out.println(sb.toString());
}
分享到:
相关推荐
### 使用Java调用DOS命令获取系统进程列表 在日常的软件开发与系统管理工作中,经常需要通过编程的方式来获取或操作系统的相关信息。本篇文章将详细解释如何利用Java语言调用DOS命令来获取Windows系统的进程列表。...
本话题主要关注如何利用Java调用WPS(金山办公软件)来实现Word到PDF的转换以及Word到图片的转换。这些功能对于处理大量文档和报告的企业尤其有用,可以自动化工作流程,减少手动操作。 首先,让我们了解WPS。WPS ...
③阻塞、唤醒:利用系统提供的线程类模仿进程,直接启动相关的系统调用即可使线程暂停或恢复,从而达到阻塞和唤醒的目的; 针对需求3 :通过编写P、V原语来实现进程的同步; 针对需求4:为进程管理器类编写调度函数...
Java调用SPSS的实例是将Java编程语言与统计分析软件SPSS(Statistical Product and Service Solutions)结合使用的典型应用。SPSS提供了Java接口,使得开发者可以利用Java代码执行SPSS的数据处理和分析任务,无需...
下面将详细解释如何通过Java调用系统执行程序,以标题和描述中的例子作为基础进行讲解。 首先,我们来看一下提供的代码片段。这段Java代码展示了如何在Windows 2000环境下调用名为SayHi.exe的外部程序: ```java ...
### Java系统命令调用 在Java编程中,有时我们需要通过Java程序来执行操作系统级别的命令,例如启动、停止服务,或者进行一些系统级别的操作。本文将详细介绍如何使用Java Runtime类中的`getRuntime().exec()`方法...
在Java编程环境中,实现守护进程(Daemon)以及创建多个进程和JVM是非常常见的需求,特别是在构建分布式系统或者需要持续后台运行的服务时。本篇将详细阐述如何使用Java来实现这些功能。 守护进程通常是一个在后台...
在Java开发过程中,有时候我们需要监控系统资源或特定进程的状态,例如CPU使用率、内存占用情况等。这在服务器性能监控、问题排查等方面尤为重要。本文将详细介绍如何使用Sigar库来实现这些功能。 #### Sigar简介 ...
标题 "exchange/powershell,Java调用powershell开通邮箱" 暗示了这是一个关于使用Java编程语言调用PowerShell脚本在Exchange服务器上创建邮箱的教程或项目。Exchange是微软提供的一款企业级电子邮件服务器软件,而...
`SurferUtil.java`是Java源代码文件,这是Java调用VB开发的Surfer功能的关键部分。在Java中,通常采用`ProcessBuilder`或`Runtime.exec()`方法来执行外部命令(即`sufercounter.exe`)。同时,为了传递参数和接收...
在这个特定的问题"Java调用Linux CentOS系统安装的OpenOffice4报错"中,开发者可能在尝试使用Java来自动化处理文档,如转换Office格式,而OpenOffice4提供了一个开源的解决方案,可以将Microsoft Office文档转换为...
这里通过`cmd.exe`调用`wmic`命令,传入参数`process where name='java-test.exe' call terminate`来终止名为`java-test.exe`的进程。 - `IOException`处理:如果执行命令时出现错误,如无法找到命令或权限不足等...
Java调用Chrome浏览器内核是开发桌面应用时一个常见的需求,尤其在需要嵌入Web页面或者与Web内容交互的场景下。CEF(Chromium Embedded Framework)是一个开源项目,它允许开发者将Google Chrome的Blink渲染引擎和V8...
Java调用R语言源码是一种跨语言交互的技术,允许Java应用程序执行R语言的统计计算、数据处理或图形生成等功能。这种技术在数据科学领域尤其有用,因为R语言提供了丰富的统计库和优秀的数据可视化工具,而Java则有...
总之,Java模拟操作系统中的进程调度算法是学习操作系统课程的经典实践项目。通过FCFS、SJF、RR和HRN这四种算法的实现,我们可以更好地理解和掌握进程调度的基本原理,为设计和优化更复杂的调度策略打下坚实基础。
以下是如何使用Java调用Windows命令行的详细步骤和注意事项: 1. **调用外部程序** - 使用`Runtime.getRuntime().exec()`方法创建一个子进程来执行指定的可执行程序。例如: ```java Process process = Runtime....
要实现Java调用本地的远程桌面连接,通常会使用`Runtime.getRuntime().exec()`方法来执行系统命令。这个方法允许我们在Java程序中执行任何可执行文件或命令行脚本。例如,我们可以构造一个包含用户名、密码和目标...
本示例探讨了如何使用Java调用Python脚本,实现数据交换和处理。Java和Python结合使用,可以充分利用Java的高效性能和Python的易用性及丰富的库资源。 Java调用Python主要依赖于Jython、Apache Beam、Java的Runtime...
总结来说,Java调用Python代码是通过各种工具和库实现的,如Jython、Py4J等。这些方法各有优缺点,开发者应根据项目需求、性能和兼容性等因素来选择最合适的方式。在实际项目中,通过实践和调试这些工具,可以更好地...
### Java调用Linux命令 Java提供了一种强大的机制来执行操作系统级别的任务,其中包括调用Linux命令。实现这一功能的核心是`Runtime`类中的`exec()`方法。这个方法允许Java应用程序创建一个新的进程来执行指定的...