0

如何通过 java 实现和使用命令提示符命令并在 java 中查看结果?命令提示符命令如下:

  1. cd Desktop\nikto-2.1.4
  2. nikto.pl -h www.cirt.net -ssl .

为了能够在 java 中使用这些命令并查看结果,我应该怎么做?

4

3 回答 3

6

我将使用 ProcessBuilder 设置当前目录并使用cmd.exe. 我会将错误和输出结合起来,并将输出读入您的 Java 程序。

于 2012-09-10T15:31:56.003 回答
0

运行命令的一种简单方法是使用Process对象。

String[] commands = { "cd Desktop\nikto-2.1.4", "nikto.pl -h www.cirt.net -ssl ." }
Process process = Runtime.getRuntime().exec( commands );
try {
    InputStream is = process.getInputStream();
    try {
        //.... do something        
    } 
    finally { is.close(); }
}
finally { process.destroy(); }

现在处理所有这些不同的流可能会很麻烦,因此 - > Lawrey 先生建议的 java.lang.ProcessBuilder。它是 JVM 提供的一个实用程序类,旨在简化 Process 对象的使用。这将使给定的示例更容易忍受。

于 2012-09-10T20:33:55.500 回答
0

以下代码将显示 的输出nikto.pl -h www.cirt.net -sslb,允许您捕获和操作它。

cd Desktop\nikto-2.1.4
for /f "tokens=*" %%x in ('nikto.pl -h www.cirt.net -sslb') do echo %%x
于 2012-09-11T12:58:57.470 回答