package com.fly.jenkins.util;

/**
* 操作系统类: 获取System.getProperty("os.name")对应的操作系统
*
* @author isea533
*/
public class OSinfo { private static String OS = System.getProperty("os.name").toLowerCase(); private static OSinfo _instance = new OSinfo(); private EPlatform platform; private OSinfo() {
} public static boolean isLinux() {
return OS.indexOf("linux") >= 0;
} public static boolean isMacOS() {
return OS.indexOf("mac") >= 0 && OS.indexOf("os") > 0 && OS.indexOf("x") < 0;
} public static boolean isMacOSX() {
return OS.indexOf("mac") >= 0 && OS.indexOf("os") > 0 && OS.indexOf("x") > 0;
} public static boolean isWindows() {
return OS.indexOf("windows") >= 0;
} public static boolean isOS2() {
return OS.indexOf("os/2") >= 0;
} public static boolean isSolaris() {
return OS.indexOf("solaris") >= 0;
} public static boolean isSunOS() {
return OS.indexOf("sunos") >= 0;
} public static boolean isMPEiX() {
return OS.indexOf("mpe/ix") >= 0;
} public static boolean isHPUX() {
return OS.indexOf("hp-ux") >= 0;
} public static boolean isAix() {
return OS.indexOf("aix") >= 0;
} public static boolean isOS390() {
return OS.indexOf("os/390") >= 0;
} public static boolean isFreeBSD() {
return OS.indexOf("freebsd") >= 0;
} public static boolean isIrix() {
return OS.indexOf("irix") >= 0;
} public static boolean isDigitalUnix() {
return OS.indexOf("digital") >= 0 && OS.indexOf("unix") > 0;
} public static boolean isNetWare() {
return OS.indexOf("netware") >= 0;
} public static boolean isOSF1() {
return OS.indexOf("osf1") >= 0;
} public static boolean isOpenVMS() {
return OS.indexOf("openvms") >= 0;
} /**
* 获取操作系统名字
*
* @return 操作系统名
*/
public static EPlatform getOSname() {
if (isAix()) {
_instance.platform = EPlatform.AIX;
} else if (isDigitalUnix()) {
_instance.platform = EPlatform.Digital_Unix;
} else if (isFreeBSD()) {
_instance.platform = EPlatform.FreeBSD;
} else if (isHPUX()) {
_instance.platform = EPlatform.HP_UX;
} else if (isIrix()) {
_instance.platform = EPlatform.Irix;
} else if (isLinux()) {
_instance.platform = EPlatform.Linux;
} else if (isMacOS()) {
_instance.platform = EPlatform.Mac_OS;
} else if (isMacOSX()) {
_instance.platform = EPlatform.Mac_OS_X;
} else if (isMPEiX()) {
_instance.platform = EPlatform.MPEiX;
} else if (isNetWare()) {
_instance.platform = EPlatform.NetWare_411;
} else if (isOpenVMS()) {
_instance.platform = EPlatform.OpenVMS;
} else if (isOS2()) {
_instance.platform = EPlatform.OS2;
} else if (isOS390()) {
_instance.platform = EPlatform.OS390;
} else if (isOSF1()) {
_instance.platform = EPlatform.OSF1;
} else if (isSolaris()) {
_instance.platform = EPlatform.Solaris;
} else if (isSunOS()) {
_instance.platform = EPlatform.SunOS;
} else if (isWindows()) {
_instance.platform = EPlatform.Windows;
} else {
_instance.platform = EPlatform.Others;
}
return _instance.platform;
} /**
* @param args
*/
public static void main(String[] args) {
System.out.println(OSinfo.getOSname());
} /**
* 平台
*
* @author isea533
*/
public enum EPlatform {
Any("any"), Linux("Linux"), Mac_OS("Mac OS"), Mac_OS_X("Mac OS X"), Windows("Windows"), OS2("OS/2"), Solaris(
"Solaris"), SunOS("SunOS"), MPEiX("MPE/iX"), HP_UX("HP-UX"), AIX("AIX"), OS390("OS/390"), FreeBSD(
"FreeBSD"), Irix("Irix"), Digital_Unix("Digital Unix"), NetWare_411(
"NetWare"), OSF1("OSF1"), OpenVMS("OpenVMS"), Others("Others"); private EPlatform(String desc) {
this.description = desc;
} public String toString() {
return description;
} private String description;
}
}

Java工具类(获取当前主机操作系统名)的更多相关文章

  1. java工具类 获取包下所有类

    extends:http://blog.csdn.net/jdzms23/article/details/17550119 package com.threeti.util; import java. ...

  2. JAVA工具类获取HttpServletRequest、HttpServletResponse 对象

    添加依赖 <!-- Spring Web --> <dependency> <groupId>org.springframework</groupId> ...

  3. java工具类获取properties文件的配置

    import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.i ...

  4. 使用java的Calendar工具类获取到本月的第一天起始时间和最后一天结束时间。

    1.使用java的Calendar工具类获取到本月的第一天起始时间和最后一天结束时间. package com.fline.aic.utils; import java.text.DateFormat ...

  5. Java 工具类 IpUtil - 获取本机所有 IP 地址,LocalHost 对应地址 IP

    Java 工具类 IpUtil - 获取本机所有 IP 地址,LocalHost 对应地址 IP IP 工具类 源代码: /** * <p> * * @author XiaoPengwei ...

  6. 排名前 16 的 Java 工具类

    在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. ...

  7. 排名前16的Java工具类

    原文:https://www.jianshu.com/p/9e937d178203 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法 ...

  8. 干货:排名前16的Java工具类

    在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码. 一. ...

  9. 常用高效 Java 工具类总结

    一.前言 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名,参考数据来源于Github上随机选取的5万个开源项目源码 ...

随机推荐

  1. 创建 maven 本地仓库; (五)

    在 pom.xml 添加依赖包的时候,有时候会提示无法从 http://repo1.maven.org/maven2/ 获取的情况,这时可配置个本地仓库: 从网上下载 maven 仓库网站源码包 Ne ...

  2. Spark - RDD(弹性分布式数据集)

    org.apache.spark.rddRDDabstract class RDD[T] extends Serializable with Logging A Resilient Distribut ...

  3. 那些年我们没能bypass的xss filter

    个人很喜欢收集xss payload.在这里把自己平时挖xss时会用到的payloads列出来和大家一起分享.很希望大家能把自己的一些payload也分享出来.(由于 我是linux党,所以本文出现在 ...

  4. PDO 学习与使用 ( 二 ) PDO 数据提取 和 预处理语句

    以数据库 msg 为例,说明 PDO 的数据提取.预处理语句: mysql> show tables;+---------------+| Tables_in_msg |+----------- ...

  5. ExtJS笔记4 容器与布局(Layouts and Containers)

    The layout system is one of the most powerful parts of Ext JS. It handles the sizing and positioning ...

  6. TI CC2541 BLE协议栈蓝牙MAC 地址

    在Flash中有一块只读区域,从地址0x780E开始,蓝牙的MAC以小端方式存放在里面. 在TI的Peripheral例程里面,添加一个特征值,只读属性,6字节长度(蓝牙MAC长度为48-bit,6字 ...

  7. 20145317彭垚 《Java程序设计》第7周学习总结

    20145317彭垚 <Java程序设计>第7周学习总结 教材学习内容总结 第十三章 时间与日期 13.1.1 时间的度量·即使标注为GMT(格林威治时间),实际上谈到的的是UTC(Uni ...

  8. JAVA NIO的理解

    在使用JAVA提供的Socket的IO方法时,服务端为了方便操作,会为每一个连接新建一个线程,一个线程处理一个客户端的数据交互.但是当大量客户端同服务端连接时,会创建大量的线程,线程之间的切换会严重影 ...

  9. Why Stored Procedures?

    http://www.w3resource.com/mysql/mysql-procedure.php Stored procedures are fast. MySQL server takes s ...

  10. delphi动态数组指针问题

    就一个button事件 procedure TForm1.btn7Click(Sender: TObject); Type TMyArr = array of array of array of In ...