Java を介してコマンド プロンプト コマンドを実装して使用し、Java で結果を確認するにはどうすればよいですか? コマンド プロンプト コマンドは次のとおりです。
cd Desktop\nikto-2.1.4
nikto.pl -h www.cirt.net -ssl .
これらのコマンドを Java で使用して結果を表示するにはどうすればよいですか?
ProcessBuilder を使用して現在のディレクトリを設定し、cmd.exe
. エラーと出力を組み合わせて、出力を Java プログラムに読み込みます。
コマンドを実行する簡単な方法は、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(); }
これらの異なるストリームをすべて処理するのは面倒な場合があるため、-> ローリー氏が提案した java.lang.ProcessBuilder これは、Process オブジェクトの使用を簡素化するために JVM によって提供されるユーティリティ クラスです。与えられた例をより許容できるものにします。
次のコードは の出力を表示し、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