在windows下写一段Java代码,运行代码时调用执行linux下的shell脚本
时间: 2023-12-03 18:42:36 浏览: 153
windows下写的shell脚本在linux执行出错的解决办法
5星 · 资源好评率100%
可以使用Java中的`Runtime`类来执行系统命令,包括Linux下的shell脚本。下面是一段示例代码:
```java
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class RunShellScript {
public static void main(String[] args) {
try {
// 要执行的shell脚本
String command = "sh /path/to/script.sh";
// 执行命令并获取输出
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);
}
// 等待命令执行完毕
int exitCode = process.waitFor();
System.out.println("Exited with error code " + exitCode);
} catch (Exception e) {
e.printStackTrace();
}
}
}
```
在上面的代码中,将要执行的shell脚本的路径写在`command`变量中,并且使用`sh`命令来执行该脚本。执行命令后,可以通过`Process`对象的`getInputStream()`方法来获取命令的输出,并且在控制台上打印出来。最后,使用`waitFor()`方法等待命令执行完毕,并且获取命令的退出码。
阅读全文