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工具类获取文件扩展名与content-type、http与content-type映射关系

    java工具类获取文件扩展名与content-type.http与content-type映射关系 大家好,我是酷酷的韩~ 一.对应关系参考地址: http://doc.chacuo.net/cont ...

  2. Java工具类-获取请求ip/浏览器/操作系统/浏览器版本

    获取请求ip/浏览器/操作系统/浏览器版本 使用到第三方工具类 hutool <!-- hutool工具类 --> <dependency><groupId>cn. ...

  3. java 工具类-去除字符串中特殊字符、全角转为半脚、获取字符串中姓名/电话、姓名重复后追加a.b.c...aa,ab..

    java 工具类-去除字符串中特殊字符.全角转为半脚.获取字符串中姓名/电话.姓名重复后追加a.b.c-aa,ab- public class NameUtil {/*** 姓名重复后追加a.b.c. ...

  4. 【Java工具类】(22)—服务器传文件工具类SCp和Sftp

    Java工具类(22)-服务器传文件工具类SCp和Sftp 1.Scp package com.awifi.capacity.docker.manager.utils;import ch.ethz.s ...

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

    2019独角兽企业重金招聘Python工程师标准>>> 干货:排名前 16 的 Java 工具类!   在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最 ...

  6. 排名前 16 的 Java 工具类

    转载来自微信公众号:Java 技术栈.如有侵权,请联系作者删除!! 在 Java 中,工具类定义了一组公共方法,这篇文章将介绍 Java 中使用最频繁及最通用的 Java 工具类.以下工具类.方法按使 ...

  7. beanutils工具类_16 个超级实用的 Java 工具类!

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

  8. java轻量级并行工具类_16 个超级实用的 Java 工具类

    原标题:16 个超级实用的 Java 工具类 源 /juejin 在Java中,工具类定义了一组公共方法,这篇文章将介绍Java中使用最频繁及最通用的Java工具类.以下工具类.方法按使用流行度排名, ...

  9. java 文本工具类_干货:排名前16的Java工具类

    原标题:干货:排名前16的Java工具类 作者丨Java技术栈 https://www.jianshu.com/p/9e937d178203 在Java中,工具类定义了一组公共方法,这篇文章将介绍Ja ...

最新文章

  1. swift 中跳转web view的两种方法
  2. juyter显示决策树图形_决策树分析细分市场
  3. Android学习笔记:TabHost 和 FragmentTabHost
  4. 编译运行linux0.12,linux0.12 编译过程
  5. 前端 网络安全 前端优化 代码架构 笔记
  6. 分区表理论解析(下):SQL Server 2k52k8系列(二)
  7. c语言的链表ppt,C语言链表详解ppt.ppt
  8. 利用免费的必应 Bing 自定义搜索打造站内全文搜索
  9. 吉林大学计算机科学与技术学院校训,名校校训
  10. python源码保护pyinstaller 打包exe运行成功 pytorch环境
  11. docker参数详解
  12. cot函数 java_java8、jdk8日期与字符串转化
  13. 向量组是否相关与行列式,方程组,秩的联系。
  14. mac浏览器打不开html,苹果电脑自带浏览器打不开百度
  15. echarts 圆环图中间插图或文字
  16. C语言 精典数值算法程序合集
  17. 正切tan的概念实体化
  18. 强化学习3:蒙特卡洛和时序差分
  19. 【学习笔记】第六章 整数规划和非线性规划
  20. 在anaconda中加装R4环境

热门文章

  1. 传递function_JS中!function(){}()的理解
  2. nginx html目录 404 盘符_nginx配置场景分析 location /
  3. 如何合并mysql中的行_如何在MySQL中合并行?
  4. 计算机国二笔试试题,全国计算机等考试二笔试试题(2).ppt
  5. java io重定向,java中的标准重定向标准IO_java标准IO_java构建器_课课家
  6. flink的operator state简单理解
  7. VB 设置ListView中指定一行的背景颜色
  8. linux 下的挂载
  9. Windows 7 With SP1 MSDN版 含简体中文版
  10. 史上首次无人车队集体婚礼,直男新郎给新娘の礼物:工业设计书