執行Unix命令在Java中我如何可以執行以下shell命令:從Java
osmosis --read-xml file="planet-latest.osm" --bounding-polygon file="country.poly" --write-xml file="australia.osm"
我試着用這個代碼執行它:
Process proc = Runtime.getRuntime().exec("osmosis --read-xml file="planet-latest.osm" --bounding-polygon file="country.poly" --write-xml file="australia.osm"");
InputStream output = proc.getInputStream();
但似乎Unix命令不執行。
另外,不要忘了逃脫雙引號,或者更好,使用超負荷陣列exec方法來傳遞參數。 –
此外,我建議他使用[Commons-Exec](http://commons.apache.org/exec/tutorial.html)而不是'Runtime.exec()'或'ProcessBuilder'。 – Barend