我試圖在Java中執行shell命令,但它不起作用。在Java中執行shell命令行
我可以直接運行在Linux(Ubuntu的)這個命令:
/bin/sh -c 'while true ; do java -jar /home/user/workspace/TCPClientNew/WebContent/NewClient.jar 192.168.138.1 6789 ; sleep 1 ; done'
,但我這樣做與Java的時候,它從來沒有執行。它總是顯示「未找到」。 這裏是我的代碼:
Runtime rt = Runtime.getRuntime();
Process proc;
String[] commands = {"/bin/sh","-c","'while true ; do java -jar /home/user/workspace/TCPClientNew/WebContent/NewClient.jar "+" "+host+" "+port+ " ; sleep 1 ; done'"};
proc = rt.exec(command);
誰能告訴我,爲什麼這是錯的? 非常感謝。
嘗試使用的ProcessBuilder類和執行你的命令 –
@MiteshParmar感謝,但你能告訴我,爲什麼這是錯的? – EagerToLearn