Language agnostic 以一致的格式获取操作系统信息

Language agnostic 以一致的格式获取操作系统信息,language-agnostic,operating-system,Language Agnostic,Operating System,就上下文而言,我目前使用的是OSX,但我也有兴趣了解Linux如何解决这个问题 在许多情况下,我想查询一条信息,例如: 侦听特定端口的进程的ID 特定进程使用的内存量 与系统资源等相关的任何其他信息 我可以使用shell命令(ps、lsof等)相对轻松地实现这一点 我的问题是,这些命令总是返回格式化文本墙,通常类似于表。这对于快速终端命令很好 然而,当我在应用程序开发中使用这些命令时,我必须对结果进行切分,以获得我想要的确切信息。在某些情况下,结果的格式使其难以解析 有没有一种查询操作系统信

就上下文而言,我目前使用的是OSX,但我也有兴趣了解Linux如何解决这个问题

在许多情况下,我想查询一条信息,例如:

  • 侦听特定端口的进程的ID
  • 特定进程使用的内存量
  • 与系统资源等相关的任何其他信息
我可以使用shell命令(ps、lsof等)相对轻松地实现这一点

我的问题是,这些命令总是返回格式化文本墙,通常类似于表。这对于快速终端命令很好

然而,当我在应用程序开发中使用这些命令时,我必须对结果进行切分,以获得我想要的确切信息。在某些情况下,结果的格式使其难以解析

有没有一种查询操作系统信息的方法可以以一致且易于解析的格式返回结果?例如,我很乐意使用类似于CSV、JSON、XML等的东西

我希望答案不会是“事情就是这样”


多亏了

在Linux中,可以从中读取与进程相关的信息,并且可以将某些参数写入proc文件系统。您仍然需要解析进程的结果

/过程/(pid)/(参数)

但我想这比从程序中执行shell命令要好

人工过程


更多详情。

您是否只对OSX和Linux感兴趣?有2或3个其他操作系统。