一、在Java中运行shell脚本,可以使用Runtime类或者ProcessBuilder类。以下是使用Runtime.exec方法的示例代码:
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class RunShellScript {
public static void main(String[] args) {
try {
// 假设你的shell脚本路径是 /path/to/your/script.sh
String command = "/bin/bash /path/to/your/script.sh";
// 使用Runtime执行命令
Process process = Runtime.getRuntime().exec(command);
// 读取脚本输出
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
// 等待脚本执行完成
process.waitFor();
// 获取退出值
int exitValue = process.exitValue();
System.out.println("Exit value: " + exitValue);
} catch (Exception e) {
e.printStackTrace();
}
}
}
注意: 确保你的shell脚本有执行权限,并且路径正确。如果脚本需要输入,可以通过process.getOutputStream()来写入。