从Java执行cmd.exe命令

时间:2010-10-27 08:50:44

标签: java windows cmd

我正在尝试从用户那里读取一个文件,其中每一行都是一个cmd.exe命令,然后运行它(可以假设这些命令是合法的),但当我给出一个像{这样的命令时{1}},我得到运行时异常错误:

  

线程中的异常“main”java.io.IOException:无法运行程序“echo”:CreateProcess error = 2,系统找不到指定的文件

我正在尝试运行这样的命令:

echo hi

其中Runtime.getRuntime().exec(command); 。这对于像command = "echo hi"这样的命令很有用,所以看起来我得到的运行时就像“运行”窗口而不是cmd。有没有办法运行这些命令?

1 个答案:

答案 0 :(得分:28)

那是因为echo不是外部可执行命令(即硬盘上没有echo.exe文件,除非你自己把它放在那里)。这是shell的内部命令。

您可能会发现需要执行以下操作:

cmd.exe /c echo hello