Команда ps -ef | grep tomcat
выводит список процессов, которые содержат слово tomcat в аргументе процесса.Для выполнения команд такого типа на языке Java вы должны использовать Runtime.exec()
или ProcessBuilder
.Пример кода прилагается ниже.
import java.util.*;
import java.io.*;
public class Test {
public static void main(String args[]) {
Process p = null;
String command = "ps -ef | grep tomcat";
try {
// p = new ProcessBuilder(command).start();
p = Runtime.getRuntime().exec(command);
BufferedReader br[] = new BufferedReader[2];
br[1] = new BufferedReader(new InputStreamReader(p.getErrorStream()));
br[0] = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = null;
while ((line = br[0].readLine()) != null){
System.out.println(line);
}
try {
br[0].close();
} catch (Exception a) {}
try {
br[1].close();
} catch (Exception a) {}
}
catch (Exception grrr) {
}
finally {
try {
closeStreams(p);
p.destroy();
} catch (Exception r) {}
}
}
static void closeStreams(Process p) throws IOException {
p.getInputStream().close();
p.getOutputStream().close();
p.getErrorStream().close();
}
}