【发布时间】:2013-12-09 14:08:03
【问题描述】:
我想获取所有使用 Java 代码正在运行的进程的列表?你能告诉我我可以从哪个文件中得到这些信息吗?我想从 /proc 文件系统中获取他的数据。
【问题讨论】:
-
你是说windows/linux进程吗?
我想获取所有使用 Java 代码正在运行的进程的列表?你能告诉我我可以从哪个文件中得到这些信息吗?我想从 /proc 文件系统中获取他的数据。
【问题讨论】:
只需解析运行Process p = Runtime.getRuntime().exec("ps -e");得到的输入
我假设你使用的是 linux,因为你已经用 linux 标记了这个问题。
顺便说一下这个是相关的:How to get a list of current open windows/process with Java?
【讨论】:
对于 Linux,
Process process = Runtime.getRuntime().exec("ps -e");
BufferedReader processReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
// Read from BufferedReader
从窗口
Process process = Runtime.getRuntime().exec (System.getenv("windir") +"\\system32\\"+"tasklist.exe");
BufferedReader processReader = new BufferedReader(new InputStreamReader(process.getInputStream()));
// Read from BufferedReader
【讨论】:
linux标记了它。
/proc 中以数字命名的文件夹包含有关系统进程的信息。
将这些内容转换为人类可读的格式需要在目录遍历、阅读与/proc FS 相关的文档和代码方面付出一些努力,而且范围太广,无法在此处详细介绍,但具体问题相关这将是很好的后续问题:-)
干杯,
【讨论】: