慕运维8079593
我在Linux中遇到了一个类似的问题,只不过是“ps-ef_grep找进程”。至少使用“ls”可以替换与语言无关(尽管速度较慢)的Java。例如:File f = new File("C:\\");String[] files = f.listFiles(new File("/home/tihamer"));for (String file : files) {
if (file.matches(.*some.*)) { System.out.println(file); }}有了“ps”,这就有点难了,因为Java似乎没有相应的API。我听说西格也许能帮到我们:https:/Support.hyperic.com/Display/SIGAR/Home然而,最简单的解决方案(正如Kaj所指出的)是以字符串数组的形式执行管道命令。以下是完整的代码:try {
String line;
String[] cmd = { "/bin/sh", "-c", "ps -ef | grep export" };
Process p = Runtime.getRuntime().exec(cmd);
BufferedReader in =
new BufferedReader(new InputStreamReader(p.getInputStream()));
while ((line = in.readLine()) != null) {
System.out