본문 바로가기
Programming/Java

[Java] 시스템 운영체제/서버 호스트(host) 정보 출력하기

by 빅경 2024. 6. 8.
728x90
반응형

Java 애플리케이션이 현재 동작하고 있는 시스템 운영체제 정보 출력하기 위해서는 System.getProperty("os.name") 코드를 사용하면 된다. 프로퍼티에서 가져온 정보를 기반으로 조건문을 사용해서 OS를 구분한다.

로컬, 개발, 운영 서버간 다르게 동작을 처리해야 할 경우가 있다. 이럴 때 InetAddress.getLocalHost()를 이용하여 호스트 정보를 가져와서, 로컬 서버인지 구분할 수 있다.

 

public class SystemOsMain {

    public static void main(String[] args) {
        String os = System.getProperty("os.name").toLowerCase();

        if (os.contains("win")) {
            System.out.println("Windows");

        } else if (os.contains("mac")) {
            System.out.println("Mac");

        } else if (os.contains("nix") || os.contains("nux") || os.contains("aix")) {
            System.out.println("Unix");

        } else if (os.contains("linux")) {
            System.out.println("Linux");

        } else if (os.contains("sunos")) {
            System.out.println("Solaris");
        }
        
        try {
            String hostName = InetAddress.getLocalHost().getHostName();
            String hostAddr = InetAddress.getLocalHost().getHostAddress();
            System.out.println("HostName = " + hostName + "(" + hostAddr + ")");
            System.out.println("User ID: " + System.getProperty("user.name"));
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
    }
}
728x90
반응형