java局域网 端口扫描_java 如何端口扫描出ssh端口?
在centos 7上測試了一下,比較簡單粗暴.代碼如下
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.LineNumberReader;
/**
* Created by nicholas on 11/19/2016.
*/
public class GetProcessInfo {
private static final String[] SHELL = {"sh", "-c", "lsof -Pnl +M -i4 | grep sshd"};
private static final String KEY = "(LISTEN)";
private static String runCommand(String[] shell) throws IOException, InterruptedException {
String result = "";
Process pos = Runtime.getRuntime().exec(shell);
pos.waitFor();
InputStreamReader ir = new InputStreamReader(pos.getInputStream());
LineNumberReader input = new LineNumberReader(ir);
String ln = "";
while ((ln = input.readLine()) != null) {
String temp = ln.toString();
if (temp.contains(KEY)) {
result = temp;
}
}
input.close();
ir.close();
return result;
}
public static int getPort() throws IOException, InterruptedException {
String result = runCommand(SHELL);
if ("".equals(result)) {
System.out.println("get sshd services fail....");
return 0;
}
String[] split = result.split(":")[1].split(" ");
int port = Integer.valueOf(split[0]);
return port;
}
public static void main(String[] args) throws IOException, InterruptedException {
System.out.println("sshd port = " + getPort());
}
}
執(zhí)行結(jié)果
總結(jié)
以上是生活随笔為你收集整理的java局域网 端口扫描_java 如何端口扫描出ssh端口?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何实现场景切换的java_JavaFX
- 下一篇: java中从str1中删除所有str2_