0

ファイルa.batを含むAという名前のフォルダーがあります。ファイルを書きたい場合は、次のように書くことができます。.bat.bat

cd A/
call a.bat

結果が表示されますが、実行したい場合Javaは問題があります。

私はこれをやろうとしています:

String command = "cmd.exe /c start cd A/\ncall a.bat";
try {
    Runtime.getRuntime().exec(command); 
} catch (IOException e) { }

and を\nandに置き換えようとしましたが、うまくいきませんでした。(2 本の線があることを認識しません)。;\r&&

.batfromから複数の行を実行するにはどうすればよいJavaですか?

4

1 に答える 1

1

コマンドcmdを必要とするのではなく、spawn の時点で Java 側からプロセスの作業ディレクトリを設定できます。cd

ProcessBuilder pb = new ProcessBuilder("cmd.exe", "/c", "a.bat");
pb.directory(new File("path\\to\\A"));
Process p = pb.start(); 
于 2013-02-28T11:16:13.170 に答える