从java中找到linux发行版的名称

我们正在java中编写一个小型库,需要从底层系统收集信息。我们能够从java中的系统属性中读取大部分内容,但是我们似乎无法找到在linux上运行时提取发行版名称的正确方法。电话
System.getProperty("os.name");
返回“Linux”(我们也收集)但我们正在寻找一种方法“Ubuntu”也是如此。我们在java中需要这个解决方案,并且不想进行/ etc / release解析     
已邀请:
为了可靠而准确地做到这一点是不可能的,我能建议的最好的方法是采用'uname -a'的输出并使用它。 注意:这不是Java限制 - 没有共同(和准确)的方法来识别分布。     
您可以尝试调用
lsb_release -i
,但这不能保证工作。     
我通常使用以下命令: cat / etc / issue 用Java读取这个文件应该很容易。问题是这个文件是否在每个(或至少大多数)Linux发行版上。我发现它在我需要它的任何地方,但它并不经常需要它。     

要回复问题请先登录注册