在node中,您可以访问process.os() process.platform ,它们为您提供5个值之一:

'darwin'
'freebsd'
'linux'
'sunos'
'win32'

但是,如何打印特定发行版(例如其中之一)?

http://en.wikipedia.org/wiki/List_of_Linux_distributions
'ubuntu'
'gentoo'
'fedora'
'SUSE Linux'
'CentOS'
dozens/hundreds more

如果没有标准方法,那么目前是否有任何首选的解决方案?主要地,这对于能够(以编程方式)区分ubuntu与其他一些流行的EC2图像ose之间的区别很有用。

最佳答案

总结所有响应:没有简单的方法来确定当前的Linux发行版。
但是,您可以从这里开始。

  • uname -v通常为您提供带有一些信息的长字符串。 (例如:#66-Ubuntu SMP Thu Apr 25 03:27:11 UTC 2013)
  • Debian /etc/debian_version,但这也是在Ubuntu中设置的!
  • Ubuntu:/etc/lsb-release/etc/os-release
  • SuSe:/etc/SuSE-release
  • 许多发行版也写入/etc/issue

  • 如果您有可能发生的可能分布的列表,则应该能够以某种方式获得该信息。如果您想使用通用方法,我猜将没有绝对的答案。

    关于linux - 如何在node.js中区分不同的操作系统发行版?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16407656/

    10-11 09:06