반응형
Java로 윈도우 명령어를 사용해야 하는 경우가 생겼습니다.
명령어 메소드 및 사용법을 정리합니다.
명령어 실행 메소드
public String execCmd(String cmd) {
try {
Process process = Runtime.getRuntime().exec(new String[]{"cmd", "/c", cmd});
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream(), "MS949"));
String line = null;
StringBuffer sb = new StringBuffer();
sb.append(cmd);
while ((line = reader.readLine()) != null) {
sb.append(line);
sb.append("\n");
}
return sb.toString() + "\n";
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
new InputStreamReader(process.getInputStream(), "MS949")
MS949
는 원활한 한글 출력을 위해 사용했습니다. 한글이 필요없다면 없어도 됩니다.
메소드 활용
public static void main(String[] args) throws InterruptedException {
CommandWindow cmdWin = new CommandWindow();
StringBuilder sb = new StringBuilder();
sb.append(cmdWin.execCmd("ipconfig"));
System.out.println(sb.toString());
}
반응형
'Programming > Java' 카테고리의 다른 글
JAVA 버전 변경이 안 되는 경우 (환경변수를 바꿔도 안 될 때) (4) | 2021.12.15 |
---|---|
log4j 보안 취약점 해결 (logback 으로 쉽게 라이브러리 교체) (0) | 2021.12.13 |
JAVA/자바 :: 설치 및 환경변수 설정 (0) | 2021.12.12 |