4

重複の可能性:
ProcessBuilder リダイレクト出力

次のコード:

ProcessBuilder pb = new ProcessBuilder(new String[] {"echo", "some text", ">", "test"});

" " を返し続けsome text > testます。

私は何を間違っていますか?

編集:

これはうまくいった

ProcessBuilder pb = new ProcessBuilder(new String[] {"bash", "-c", "echo sometext > test"});
4

1 に答える 1

4

フォローしてみてください

    ProcessBuilder pb = 
new ProcessBuilder("cmd.exe", "/c" ,"echo", "some text", ">", "test");

これは窓用です

実際には、「エコー」はコマンドではなく、Windows ではシェル (cmd.exe) の内部コマンドであり、linuxまたはunixでは「bash」です。したがって、Unix/Linux の場合

    ProcessBuilder pb = 
new ProcessBuilder("bash", "-c","echo \"some text\" >test"); 
于 2013-01-28T11:59:08.577 に答える