java执行脚本命令
导包
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.SequenceInputStream;
代码
这里传参是拼接好的命令字符串
public static String execPyCommand(String cmd) {
String separator = System.getProperty("line.separator");
Process process = null;
BufferedReader reader = null;
try {
process = Runtime.getRuntime().exec(new String[] {"/bin/sh", "-c", cmd});
SequenceInputStream input = new SequenceInputStream(process.getInputStream(), process.getErrorStream());
reader = new BufferedReader(new InputStreamReader(input));
StringBuffer sb = new StringBuffer();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line).append(separator);
}
log.info(cmd + ", 执行脚本结果: " + sb.toString());
// process.waitFor();
return sb.toString();
} catch (Exception e) {
log.error(cmd + ", 执行脚本异常! ", e);
} finally {
if(reader!=null){
try {
reader.close();
} catch (Exception e) {}
}
if(process!=null){
try {
process.destroy();
} catch (Exception e) {}
}
}
return null;
}
参考博客
https://blog.csdn.net/toneylyx/article/details/52623597
https://www.cnblogs.com/mingforyou/p/3551199.html