我正在執行命令行在我的Java程序中的一些命令,它似乎不允許我使用「grep」?我已經通過刪除「grep」部分來測試這個,並且命令運行的很好!Java運行時進程不會「grep」
我的代碼不工作:即不
String serviceL = "someService";
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("chkconfig --list | grep " + serviceL);
代碼工作:
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("chkconfig --list");
這是爲什麼?是否有某種正確的方法或解決方法?我知道我可以解析整個輸出,但是我會發現從命令行執行所有操作更容易。謝謝。
沒有理由,我無法在Java中匹配。我只是認爲寫出grep比分析輸出要快。我對Linux比較新,所以我不知道grep是shell的一個功能。謝謝! – Max
@Max:grep不是shell內建的,管道'|'是一個shell語法特性。 – ninjalj