今天无事,试一下ProcessBuilder,没想到这么一段简单的代码运行不过去
public static void main(String[] args) throws IOException {
ProcessBuilder pb = new ProcessBuilder("dir");
pb.directory(new File("e:/temp"));
Process p = pb.start();
BufferedReader in = new BufferedReader(new InputStreamReader(p
.getInputStream()));
String aline = in.readLine();
while (aline != null) {
System.out.println(aline);
aline = in.readLine();
}
}
运行时报错:
Exception in thread "main" java.io.IOException: CreateProcess: dir error=2
后来才找到原因,原来是因为dir不是一个命令,它是cmd.exe的子命令,所以应该写成这样:
ProcessBuilder pb = new ProcessBuilder("cmd.exe", "/C", "dir");
呵呵
分享到:
- 2009-05-15 10:09
- 浏览 2100
- 评论(0)
- 论坛回复 / 浏览 (0 / 2753)
- 查看更多
相关推荐
java 执行可执行文件,Runtime.exec、ProcessBuilder、commons-exec
本文档介绍了如何在Java中使用ProcessBuilder类执行ping命令,以检测主机的网络连通性。我们提供了详细的步骤说明,并附带一个简单的源码示例,演示如何使用Java代码执行ping命令并解析结果。 内容概要 本文档涵盖...
ProcessBuilder非阻塞是调用ProcessBuilder非阻塞是调用ProcessBuilder非阻塞是调用ProcessBuilder非阻塞是调用ProcessBuilder非阻塞是调用
主要介绍了linux使用管道命令执行ps获取cpu与内存占用率的示例,需要的朋友可以参考下
本文档介绍了如何在Java中使用ProcessBuilder类执行DOS命令。我们提供了详细的步骤说明,并附带一个简单的源码示例,演示如何使用Java代码删除文件。 内容概要 本文档涵盖以下内容: 使用Java代码执行DOS命令 使用...
本文档介绍了如何在Java中使用ProcessBuilder类执行DOS命令。我们提供了详细的步骤说明,并附带一个简单的源码示例,演示如何使用Java代码获取系统的网络配置信息。 内容概要 本文档涵盖以下内容: 使用Java代码...
本文档介绍了如何在Java中使用ProcessBuilder类执行常用的DOS命令。我们提供了详细的步骤说明,并附带一个简单的源码示例,演示如何使用cd命令回到上级目录以及回到根目录。 内容概要 本文档涵盖以下内容: 回到...
深入研究java.lang.ProcessBuilder类
个人对于java.lang.ProcessBuilder的分析
主要介绍了Java如何基于ProcessBuilder类调用外部程序,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
奎因使用ProcessBuilder运行时在Java中进行非空查询-“计算机娱乐:自动复制自动机”让·米洛(Jean Millo),1972年基本上是在使用ProcessBuilder充当再现代理的全新概念上制作的。 该程序输出自己的源代码,并且...
本篇文章是对Java调用BAT批处理不弹出cmd窗口的方法进行了详细的分析介绍,需要的朋友参考下
一个简单的ProcessBuilder包装器 例子 公共类Md5sumCommand扩展了Command { @Override protected File directory() { return new File("."); } @Override protected String command() { return "md5sum...
java执行shell或bat脚本,Java可以使用三种方式来执行.bat或.shell脚本文件:使用Runtime.exec()、使用ProcessBuilder、使用第三方工具包commonsexec.jar
Forker Daemon 可用于降低 Linux 上的分叉成本,方法是启动一个单独的小型 JVM,其工作只是代表另一个运行时执行命令。 Forker Wrapper 是一个在 Java 中执行服务的“包装器”。 类似于 JSW(Java 服务包装器)和 ...
使用ProcessBuilder执行本地命令; 泛型编程; 监控和管理虚拟机;新的线程执行架构; 线程锁; 线程条件; 线程同步装置:semaphore countdownlatch cyclicbarrier exchanger; 17 java与xml 用dom处理xml文档; 用sax处理...
使用的是J2SE的ProcessBuilder类执行外部的程序,相对于 Runtime.exec 它更方便,可以设置环境变量等。这里使用它在windows下读取物理网卡的地址。供大家参考。
ZT流程执行器 持续集成 快速概述 创建该项目是为了将上项目的类似功能合并到单个代码库中。 它被设计为功能强大,但仍易于使用。 通过使用单个类ProcessExecutor ,用户可以从java.lang.ProcessBuilder和获得功能。 ...
对于可执行引擎,它只需获取脚本并使用Java ProcessBuilder将其作为单个命令运行。 装订 脚本绑定使用其表示形式作为环境变量导出,并且可以在外壳程序中进行访问。 对于可执行引擎,绑定也将在命令行(即脚本)中...
6. processBuilder builder = new ProcessBuilder ( cmd ); 7. //设置一个路径 8. if ( workdirectory ! = null ) 9. builder.directory ( new File ( workdirectory ) ) ; 10. builder.redirectErrorStream...