[英]Executing cmd.exe commands from Java
我正在尝试从用户那里读取一个文件,其中每一行都是一个cmd.exe
命令,然后运行它(可以假设这些命令是合法的),但是当我给出一个类似echo hi
的命令时,我得到运行时异常错误:
线程“main”中的异常java.io.IOException:无法运行程序“echo”:CreateProcess error = 2,系统找不到指定的文件
我正在尝试运行这样的命令:
Runtime.getRuntime().exec(command);
其中command = "echo hi"
。 这确实适用于像regedit
这样的命令,所以我得到的运行时似乎就像“运行”窗口而不是cmd。 有没有办法运行这些命令?
那是因为echo
不是外部可执行命令(即,你的硬盘上没有echo.exe
文件,除非你自己把它放在那里)。 这是shell的内部命令。
您可能会发现需要执行以下操作:
cmd.exe /c echo hello
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.