需要运行 netstat -n |找到“:3389”|使用Java Runtime找到“ESTABLISHED”命令。
尝试过:Runtime.getRuntime().exec(cmd);
但如果我们有 |,我们就无法做到这一点(管道)在我们的命令中。
我找到了linux命令,我们可以像:
String[] cmd = {"/bin/sh", "-c", "grep -c 'Report Process started' /path/to/server.log"};
Runtime.getRuntime().exec(cmd);
但我需要窗户,请让我知道我们该怎么做?
答案 0 :(得分:1)
您应该只运行netstat -n
并在java中完成剩下的工作。您还可以编写脚本,并执行脚本而不是单独的命令。如果您真的需要在一行中使用管道执行所有操作,则命令必须以cmd /C
为前缀
答案 1 :(得分:0)
在Windows中我们可以实现这一点:
String[] cmd = { "cmd.exe", "/c",
"netstat -n | find \":3389\" | find \"ESTABLISHED\"" };
Process process = new ProcessBuilder(cmd).start();