JeongMin-dev
[JAVA] 코드에서 쉘 스크립트 실행 본문
쉘 스크립트 실행 방법
쉘 스크립트 실행 방법으로는 두 가지가 있습니다 그중 저는 첫 번째를 애용합니다.
ProcessBuilder
@Override
public String reboot() {
String result = "";
try {
ProcessBuilder processBuilder = new ProcessBuilder("/bin/bash", "[쉘 스크립트 경로] ex:/root/example/reboot.sh");
Process process = processBuilder.start();
int exitCode = process.waitFor();
if (exitCode == 0) {
System.out.println("서버 리부트 완료!");
result = "서버 리부트 완료!";
} else {
System.out.println("서버 리부트중 오류 발생!");
result = "서버 리부트중 오류 발생!";
}
} catch (InterruptedException | IOException e) {
e.printStackTrace();
}
return result;
}
- 쉘 스크립트에서 재부팅 sh를 만든 후 코드에서 실행하는 서버 재부팅 메서드입니다.
Runtime.getRuntime(). exec()
public class RunShellScript{
public static void main(String[] args){
try{
// Run script
Process process = Runtime.getRuntime().exec("/tmp/myscript.sh");
// Read output
StringBuilder output = new StringBuilder();
BufferedReader reader = new BufferedReader(
new InputStreamReader(process.getInputStream()));
String line;
while((line = reader.readLine()) != null){
output.append(line);
}
}catch (Exception e){
e.printStackTrace();
}
}
}
- 인터넷에서 가져온 다른 방식입니다.