如何通过Java执行cmd命令

2024-03-23

我正在尝试通过 Java 执行命令行参数。例如:

// Execute command
String command = "cmd /c start cmd.exe";
Process child = Runtime.getRuntime().exec(command);

// Get output stream to write from it
OutputStream out = child.getOutputStream();

out.write("cd C:/ /r/n".getBytes());
out.flush();
out.write("dir /r/n".getBytes());
out.close();

上面打开了命令行但是不执行cd or dir。有任何想法吗?我运行的是 Windows XP、JRE6。

(我已将我的问题修改得更加具体。以下答案很有帮助,但没有回答我的问题。)


我在 forums.oracle.com 中找到了这个

允许在 Windows 中重用一个进程来执行多个命令:http://kr.forums.oracle.com/forums/thread.jspa?messageID=9250051 http://kr.forums.oracle.com/forums/thread.jspa?messageID=9250051

你需要类似的东西

   String[] command =
    {
        "cmd",
    };
    Process p = Runtime.getRuntime().exec(command);
    new Thread(new SyncPipe(p.getErrorStream(), System.err)).start();
    new Thread(new SyncPipe(p.getInputStream(), System.out)).start();
    PrintWriter stdin = new PrintWriter(p.getOutputStream());
    stdin.println("dir c:\\ /A /Q");
    // write any other commands you want here
    stdin.close();
    int returnCode = p.waitFor();
    System.out.println("Return code = " + returnCode);

同步管道类:

class SyncPipe implements Runnable
{
public SyncPipe(InputStream istrm, OutputStream ostrm) {
      istrm_ = istrm;
      ostrm_ = ostrm;
  }
  public void run() {
      try
      {
          final byte[] buffer = new byte[1024];
          for (int length = 0; (length = istrm_.read(buffer)) != -1; )
          {
              ostrm_.write(buffer, 0, length);
          }
      }
      catch (Exception e)
      {
          e.printStackTrace();
      }
  }
  private final OutputStream ostrm_;
  private final InputStream istrm_;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何通过Java执行cmd命令 的相关文章

  • JPA 中的复合键

    我想创建一个具有自动生成的主键的实体 而且还有一个由其他两个字段组成的唯一复合键 我如何在 JPA 中执行此操作 我想这样做是因为主键应该用作另一个表中的外键 并且使其复合并不好 在下面的代码片段中 我需要命令和模型是唯一的 pk当然是主键
  • Java Runtime.getRuntime().freeMemory() 问题

    我搜索并看到了一些线程 但没有一个能够解决我遇到的具体问题 我正在尝试使用以下方式监视我的内存使用情况Runtime getRuntime freeMemory Runtime getRuntime maxMemory and Runtim
  • 通过SOCKS代理连接Kafka

    我有一个在 AWS 上运行的 Kafka 集群 我想用标准连接到集群卡夫卡控制台消费者从我的应用程序服务器 应用程序服务器可以通过 SOCKS 代理访问互联网 无需身份验证 如何告诉 Kafka 客户端通过代理进行连接 我尝试了很多事情 包
  • 使用 GWT 读取非常大的本地 XML 文件

    我正在使用 GWT 构建我的第一个 Java 应用程序 它必须从一个非常大的 XML 文件中读取数据 当我尝试发送对文件中信息的请求时遇到问题 并且我不太确定它是否与文件的大小或我的语义有关 在我的程序中 我有以下内容 static fin
  • 如何在 Antlr4 中为零参数函数编写语法

    我的函数具有参数语法 如下面的词法分析器和解析器 MyFunctionsLexer g4 lexer grammar MyFunctionsLexer FUNCTION FUNCTION NAME A Za z0 9 DOT COMMA L
  • 如何在代理后面安装 Eclipse Neon

    对于 Neon Eclipse 附带了一个安装程序 我在安装程序中找不到任何配置菜单 我的java版本是 java version java version 1 8 0 72 Java TM SE Runtime Environment b
  • 当客户端关闭连接时,Spring StreamingResponseBody 请求线程未清理

    我在控制器中有一个端点 它返回一个StreamingResponseBody 用于向客户端发送文件 其代码大致如下 RestController RequestMapping value api public class Controlle
  • Spring Security SAML2 使用 G Suite 作为 Idp

    我正在尝试使用 Spring Security 5 3 3 RELEASE 来处理 Spring Boot 应用程序中的 SAML2 身份验证 Spring Boot 应用程序将成为 SP G Suite 将成为 IDP 在我的 Maven
  • ConcurrentHashMap 内部是如何工作的?

    我正在阅读有关 Java 并发性的 Oracle 官方文档 我想知道Collection由返回 public static
  • Jackson XML ArrayList 输出具有两个包装器元素

    我在 Jackson 生成的 XML 输出中得到了两个包装器元素 我只想拥有一个 我有一个 Java bean Entity Table name CITIES JacksonXmlRootElement localName City pu
  • 如何使用 Hibernate (EntityManager) 或 JPA 调用 Oracle 函数或过程

    我有一个返回 sys refcursor 的 Oracle 函数 当我使用 Hibernate 调用该函数时 出现以下异常 Hibernate call my function org hibernate exception Generic
  • 如何避免 ArrayIndexOutOfBoundsException 或 IndexOutOfBoundsException? [复制]

    这个问题在这里已经有答案了 如果你的问题是我得到了java lang ArrayIndexOutOfBoundsException在我的代码中 我不明白为什么会发生这种情况 这意味着什么以及如何避免它 这应该是最全面的典范 https me
  • 读取电子邮件的文本文件转换为 Javamail MimeMessage

    我有一个电子邮件原始来源的文本文件 直接从 gmail 复制 如果您单击 查看原始文件 您就会看到它 我想读入该文件并将其转换为 MimeMessage 如果您好奇为什么 我设置了 JavaMaildir 并且需要用电子邮件填充它的收件箱以
  • 使用 Mockito 模拟某些方法,但不模拟其他方法

    有没有办法使用 Mockito 模拟类中的某些方法 而不模拟其他方法 例如 在这个 诚然是人为的 Stock我想嘲笑的班级getPrice and getQuantity 返回值 如下面的测试片段所示 但我想要getValue 执行乘法 如
  • Java实现累加器类,提供Collector

    A Collector具有三种通用类型 public interface Collector
  • HashMap 值需要不可变吗?

    我知道 HashMap 中的键需要是不可变的 或者至少确保它们的哈希码 hashCode 不会改变或与另一个具有不同状态的对象发生冲突 但是 HashMap中存储的值是否需要与上面相同 为什么或者为什么不 这个想法是能够改变值 例如在其上调
  • “无法实例化活动”错误

    我的一个 Android 应用程序拥有大约 100 000 个用户 每周大约 10 次 我会通过 Google 的市场工具向我报告以下异常情况 java lang RuntimeException Unable to instantiate
  • Java Swing:需要一个高质量的带有复选框的开发 JTree

    我一直在寻找一个 Tree 实现 其中包含复选框 其中 当您选择一个节点时 树中的所有后继节点都会被自动选择 当您取消选择一个节点时 树中其所有后继节点都会自动取消选择 当已经选择了父节点 并且从其后继之一中删除了选择时 节点颜色将发生变化
  • 将 Apache Camel 执行器指标发送到 Prometheus

    我正在尝试转发 添加 Actuator Camel 指标 actuator camelroutes 将交换 交易数量等指标 发送到 Prometheus Actuator 端点 有没有办法让我配置 Camel 将这些指标添加到 Promet
  • 在浏览器刷新中刷新检票面板

    我正在开发一个付费角色系统 一旦用户刷新浏览器 我就需要刷新该页面中可用的统计信息 统计信息应该从数据库中获取并显示 但现在它不能正常工作 因为在页面刷新中 java代码不会被调用 而是使用以前的数据加载缓存的页面 我尝试添加以下代码来修复

随机推荐

  • 有人可以帮助我一些 JDBC 初学者吗?

    作为刚接触 Java 的 C 开发人员 我认为简单地显示一些 C 代码可能是最简单的 这样我就可以看到等效的 Java JDBC 调用是什么 String myConnectionString String mySql select nam
  • Angular 中令牌验证的最佳方法

    在使用 AngularJS 进行的 Web 应用程序开发中 使用令牌验证来进行身份验证 那么进行此验证的最佳方法是什么 例如 每次进行路由转换时都验证令牌 为此 每次我想验证时 我都必须拨打休息电话 通过一次休息调用仅验证令牌一次 然后将令
  • document.cookie 未返回所有 cookie

    我正在尝试使用以下方式读取我的域设置的所有 cookiedocument cookie我注意到 它只返回 csrftoken 和另一个值 我的目标是阅读sessionid从饼干 please see the below screenshot
  • 如何交互式地挑选

    我已经在一个分支上黑了一段时间了 这个分支很快就不会被合并了 但无论如何 我还是想将一些提交合并到 master 中 有没有办法获得交互式的挑选 它将显示提交及其更改 然后让我选择我真正想要挑选的内容 您可以使用提交图来做到这一点 gitk
  • Ruby 和修改 Float 实例的 self

    我想更改浮点实例的自身值 我有以下方法 class Float def round by precision self 10 precision round to f 10 precision end end 我想添加 round by 方
  • c++0x_warning.h:31:2:错误:

    我正在尝试创建一个文件并收到此错误 我是新手 有人能帮我一下吗 usr include c 4 6 bits c 0x warning h 32 2 error error This file requires compiler and l
  • Cocos2d 3.0中如何获取winSize

    我在Cocos2d 1 0和Cocos2d 2 0中使用了以下代码 但在Cocos2d 3 0中似乎找不到 CGSize s CCDirector sharedDirector winSize 如何在Cocos2d 3 0中获取屏幕尺寸 您
  • 如何使用 Unity 将基于 2D 数组的图块实例化到平台游戏中?

    我正在构建一个非常简单的平台游戏 使用 2D 数组来构建基于它的地图 我想要两个简单的目标 但目前还没有找到答案 确保相机为 16 9 并且我的场景将 100 显示在其中 像在数组中一样构建 2D 平台图块集 我的环境 Unity 5 5
  • C# 编码指南 [重复]

    这个问题在这里已经有答案了 可能的重复 C 编码标准 最佳实践 https stackoverflow com questions 14967 c coding standard best practices 您推荐哪些最流行 最合理且最详
  • 增加 gradle 的超时时间以获得 Maven 依赖

    我正在尝试通过以下方式从 Maven 获取 jar 依赖项grails 3 1 5 gradle依赖解析 如何增加 gradle 获取 Maven 依赖项所需的超时时间 当然 我已经看到依赖项需要更长的时间才能下载 但是我如何配置 grad
  • 从 flutter 应用程序中的 fireStore 获取带有索引的列表

    我正在尝试从 firestore 获取列表 但我遇到了索引问题 这是列表上普通项目的结构 每个对象都包含一个项目列表 class RestaurantFoodList final String id final String title L
  • 如何创建带有背景图像的倾斜透明形状?

    I want to achieve something like this it has a background image https imgur com cSde7ff I only able to make a slanted di
  • 由于 Javadoc 错误而无法构建 Maven 项目?

    有没有人遇到过类似的 Maven 错误 如下所示 由于以下错误 我无法构建我的项目 在我开始编写代码之前 一切都工作正常 我什至没有处理下面定义的接口 它似乎与 Javadoc 有关 ERROR Failed to execute goal
  • Trinidad/ADF Faces、文件上传、EOFException

    我在 Tomcat 8 5 服务器上的 web xml version 3 1 中使用 JSF 2 3 Mojarra 2 3 3 Trinidad 2 2 1 及其文件上传组件 tr inputFile 我收到以下异常 并且没有有效的上传
  • Winforms 窗体间切换

    我现在用的是winform 我有主表单 form1 还有一个打开 form2 的按钮 当我打开 form2 时 我希望 form1 消失 当用户单击 form2 上的 x 按钮时 我希望它关闭并返回到 form1 我不想使用模态窗口 pri
  • 进程资源不受 setrlimit 限制

    我编写了一个简单的程序 将其数据大小限制为 65Kb 并验证相同的情况 我分配了超过 65Kb 的虚拟内存 从逻辑上讲 如果我执行了所有正确的操作 如下所示 那么 malloc 调用应该会失败 不是吗 include
  • gcc(windows + MinGW) 是否在 inttypes.h 中定义了 SCNd8、SCNu8?

    include
  • 顺风旋转木马

    我想使用 Tailwind CSS 制作一个轮播 但我无法将一些纯 CSS 转换为顺风 CSS 如果无法将纯 CSS 转换为 tailwind CSS 请告诉我如何在我的 React 项目中添加该 CSS 我在用REACT 请帮我解决这个问
  • 如何在 Laravel 4 中构建带有子应用程序的平台?

    我需要开发几个具有共同功能和流程的网站 唯一会发生巨大变化的是CSS 甚至HTML也会通用 我在 Laravel 4 中组装这个结构时遇到了麻烦 因为我仍然是该框架的初学者 我需要有一个所有 子项目 都将继承的 超级项目 我需要能够在特定的
  • 如何通过Java执行cmd命令

    我正在尝试通过 Java 执行命令行参数 例如 Execute command String command cmd c start cmd exe Process child Runtime getRuntime exec command