Java与windows cmd交互

Java与windows cmd交互,java,windows,cmd,Java,Windows,Cmd,我搜索过类似的问题,但尽管有很多类似的题目,但都问了一些不同的问题 在本例中,我希望java程序通过编写命令和读取响应与终端(Windows)交互 我已经找到了类ProcessBuilder,但它似乎不能满足我的需要 我要寻找的是这样的东西: 在某个给定位置启动cmd(如C:\Users\federico) 发出命令(dir或cd desktop);这不应打开命令提示窗口 读取命令可能产生的任何输出 诸如此类,直到用户退出程序。我想你根本不知道这方面的英文术语:你要寻找的是一种在操作系统中执行命

我搜索过类似的问题,但尽管有很多类似的题目,但都问了一些不同的问题

在本例中,我希望java程序通过编写命令和读取响应与终端(Windows)交互

我已经找到了类
ProcessBuilder
,但它似乎不能满足我的需要

我要寻找的是这样的东西:

  • 在某个给定位置启动
    cmd
    (如
    C:\Users\federico
  • 发出命令(
    dir
    cd desktop
    );这不应打开命令提示窗口
  • 读取命令可能产生的任何输出

  • 诸如此类,直到用户退出程序。

    我想你根本不知道这方面的英文术语:你要寻找的是一种在操作系统中执行命令的方法,在我所知道的每种编程语言中都被称为“exec”,包括Java:

    这就是批处理文件的用途。Java的功能在这方面发挥了什么作用?你想“数字化”一个命令吗?这是什么意思?@NickZiebert我不想只执行cmd命令,而是想让olse读懂cmd的回答(例如:我在批处理中放入了这些指令:1:cd C:/Users/federico 2:dir。我想要的是我的程序读取子目录,我不希望cmd与该目录一起打开。@ajb我希望用户可以写入文本命令,我的程序可以在cmd上执行该命令,并在另一个文本字段中打印结果:我想要要做我通常在cmd上做的事情,轻松运行我的程序听起来你想编写一个像命令提示符窗口一样工作的程序?这并不容易。我认为大多数命令都可以用
    ProcessBuilder
    处理,但你需要自己处理特殊命令,如
    cd
    。你需要解析它,fi确定当前目录的设置目标,并设置未来的
    ProcessBuilder
    进程,以便它们在新的当前目录中启动。您的程序可能需要专门处理其他命令。投票关闭时,选择“太宽”因为这是一个太大的问题,无法在这里回答。我认为这是不对的。他提到
    cd desktop
    是他想给用户的命令之一,你不能简单地执行它。在我看来,他似乎想写他自己的cmd.exe.quit,但发出了命令“cd desktop”它本身不做任何事情,与“更改当前工作目录”不同,因此“如何运行命令”的问题仍然是“您使用exec”,而不是“如何运行命令”。不,他(或她)用了几个字:“我希望我的java程序与终端(windows)交互。”“通过编写命令和阅读响应”是每个
    执行者的描述。对不起,但我的解释不同。我们都只是猜测,所以我们必须同意不同意。