“Java执行Shell语句方法比较”的版本间的差异
来自个人维基
(以“方法一: <pre class="prettyprint"> String[] cmdLin = {"/bin/sh", "-c", command}; pro = runTime.exec(cmdLin); </pre> 方法二: <pre class="prettyprint"> Strin...”为内容创建页面) |
2015年5月6日 (三) 20:35的最后版本
方法一:
String[] cmdLin = {"/bin/sh", "-c", command}; pro = runTime.exec(cmdLin);
方法二:
String[] cmdLin = command.split(" "); //分割参数 pro = runTime.exec(cmdLin);
方法一相当于在terminal中执行:
$:/bin/sh -c $command
而这则会另外启用一个thread,而且这个thread的handle我们在代码不易取得,当执行多次就会有不少这样的thread存在。
方法二则没有这个问题,因为其执行的只是这个命令:
$:$command
- ps:这里command前面的意思为取command实际内容的示意标识