3
誰能幫助我弄清楚爲什麼在Java程序中脫殼而出時,我得到這個奇怪的錯誤:執行Unix的DIFF從Java程序錯誤
diff: extra operand `file1'
diff: Try `diff --help' for more information.
我的Java代碼如下所示:
Process p = Runtime.getRuntime().exec("diff --brief -I 'REGEXPATTERN' " + file1 + " " + file2);
p.waitFor();
其中file1和file2是有效文件。當我在普通shell中執行命令時,它工作正常。當我從一個Java程序執行它時,我得到了那個錯誤。當我刪除-I 'REGEXPATTERN'
時,該命令正常工作,所以我認爲它可能與-I標誌有關。
若要上述錯誤,我檢查,像這樣的錯誤流:
BufferedReader errorReader = new BufferedReader(new InputStreamReader(p.getErrorStream()));