成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術(shù)文章
文章詳情頁

Java如何在命令行中獲取指定數(shù)據(jù)

瀏覽:8日期:2022-08-27 18:00:09

1.執(zhí)行ipconfig /all獲取主機所有網(wǎng)卡信息

并分析這些字符串,提取出有效網(wǎng)卡(網(wǎng)卡名稱,mac地址,ipv4地址,掩碼,網(wǎng)關(guān),dns)

將網(wǎng)卡插入HashMap中,key是網(wǎng)卡的名稱,value是網(wǎng)卡對象(包含mac和4個邏輯地址)

請輸入網(wǎng)卡的名稱,程序通過map的get方法取出此名稱對應(yīng)的網(wǎng)卡對象

根據(jù)網(wǎng)卡對象執(zhí)行其方法getNetId()取出其網(wǎng)卡所在網(wǎng)絡(luò)號進行打印

getBroadId()取出其廣播號進行打印

2.根據(jù)網(wǎng)卡的ip和掩碼掃描所有這個子網(wǎng)中可能存在的鄰居

然后用ping ..方式進行驗證此鄰居是否存在,如果存在則將其加入

網(wǎng)卡的鄰居集合(HashSet)中

3.某些鄰居有可能開啟防火墻導(dǎo)致ping失敗,所以驗證其是否存在的

恰當方式是先ping它一下,然后用arp -a查看這個鄰居是否有arp回應(yīng)

如果存在arp條目則說明這個鄰居是存在的.

代碼實例

package day2020072501;import java.io.BufferedReader;import java.io.InputStreamReader;import java.util.HashMap;import java.util.HashSet;import java.util.Scanner;import java.util.Set;import java.util.regex.Matcher;import java.util.regex.Pattern;public class Zzbds { public static String exeCmd(String commandStr) { BufferedReader br = null; try { Process p = Runtime.getRuntime().exec(commandStr); br = new BufferedReader(new InputStreamReader(p.getInputStream())); String line = null; StringBuilder sb = new StringBuilder(); while ((line = br.readLine()) != null) {sb.append(line + 'n'); } // System.out.println(sb.toString()); return sb.toString(); } catch (Exception e) { e.printStackTrace(); } finally { if (br != null) {try { br.close();} catch (Exception e) { e.printStackTrace();} } } return commandStr; } public static void main(String[] args) { String str = exeCmd('ipconfig /all'); String expr = '(.+適配器 +.+):'; // 找到所有網(wǎng)卡名字 HashMap<NetInfo, String> mp = new HashMap<>(); // HashMap存儲信息 Pattern pt = Pattern.compile(expr); // 配對 P,和正則匹配 Matcher mt = pt.matcher(str); // 開始匹配源字符串 matcher System.out.println('n=========================='); int MacIndex = 0;// 記錄網(wǎng)卡 while (mt.find()) { MacIndex++; System.out.println(mt.group(1)); } System.out.println('n共' + MacIndex + '個網(wǎng)卡'); if (MacIndex == 0) { System.out.println('沒有網(wǎng)卡'); return; } System.out.println('n=========================='); Matcher mt1 = pt.matcher(str); // 開始匹配源字符串 matcher // System.out.println('可用網(wǎng)卡'); int MacUse = 0;// 可以使用的網(wǎng)卡數(shù)量 String[] MacArr = new String[10];// 存儲網(wǎng)卡數(shù)組(可用網(wǎng)卡) while (mt1.find()) { // 循環(huán)遍歷所有網(wǎng)卡 // 判斷是否可用 if (NetWorkUtil.NetWorkavailable(mt1.group())) {MacArr[MacUse] = mt1.group();MacUse++;// System.out.println(mt1.group()); } } for (int i = 0; i < MacUse; i++) { System.out.println(MacArr[i]); } System.out.println('n可用網(wǎng)卡共:' + MacUse + '個'); System.out.println('n==========================n'); // System.out.println('------------------------------------'); // 打印出可用的網(wǎng)卡信息 for (int j = 0; j < MacUse; j++) { // 使用(數(shù)組)循環(huán),打印所有可用網(wǎng)卡的所有信息 String MacInfo = '';// 可用的網(wǎng)卡信息 String expr1 = '(' + MacArr[j] + '([dD]*))'; System.out.println('n第' + (j + 1) + '個是:' + MacArr[j]); Pattern pt1 = Pattern.compile(expr1); Matcher mt2 = pt1.matcher(str); if (mt2.find()) {MacInfo = mt2.group(1);// 把查到的信息賦給變量MaxInfo } // System.out.println(MacInfo); System.out.println('---------------------可用網(wǎng)卡的具體信息如下(第' + (j + 1) + '個網(wǎng)卡)----------------'); Pattern pt2 = Pattern.compile(' +描述(. +)+: (.*)'); Matcher mt3 = pt2.matcher(MacInfo);// 網(wǎng)卡名 Pattern pt3 = Pattern.compile(' +物理地址(. +)+: (.*)'); Matcher mt4 = pt3.matcher(MacInfo);// 網(wǎng)卡地址 Pattern pt5 = Pattern.compile(' +IPv4 地址( +.)+ +: +(.*)('); Matcher mt5 = pt5.matcher(MacInfo);// IP地址 Pattern pt6 = Pattern.compile(' +子網(wǎng)掩碼( +.)+ +: +(.*)'); Matcher mt6 = pt6.matcher(MacInfo);// 子網(wǎng)掩碼 Pattern pt7 = Pattern.compile(' +默認網(wǎng)關(guān)(. +)+: (.*)'); Matcher mt7 = pt7.matcher(MacInfo);// 網(wǎng)關(guān) Pattern pt8 = Pattern.compile(' +DNS 服務(wù)器( +.)+ +: +(.*)'); Matcher mt8 = pt8.matcher(MacInfo);// DNS String MacName = ''; String MacIP = ''; String IPV4 = ''; String NetMask = ''; String GateWay = ''; String DNS = ''; if (mt3.find() && mt4.find() && mt5.find() && mt6.find() && mt7.find() && mt8.find()) {MacName = mt3.group(2);MacIP = mt4.group(2);IPV4 = mt5.group(2);NetMask = mt6.group(2);GateWay = mt7.group(2);DNS = mt8.group(2);mp.put(new NetInfo(MacName,MacIP, IPV4, NetMask, GateWay, DNS), MacName); } System.out.println('網(wǎng)卡名稱:' + MacName.trim()); System.out.println('網(wǎng)卡地址:' + MacIP.trim()); System.out.println('IPV4地址:' + IPV4.trim()); System.out.println('子網(wǎng)掩碼:' + NetMask.trim()); System.out.println('默認網(wǎng)關(guān):' + GateWay.trim()); System.out.println('DNS地址:' + DNS.trim()); } System.out.println('n=====================使用HashMap遍歷輸出==========================='); for (NetInfo h : mp.keySet()) { System.out.println('n網(wǎng)卡名字:' + mp.get(h) + 'n' + h); System.out.println('n-------------'); } System.out.println('======================'); System.out.println('請輸入網(wǎng)卡名:'); //String inputMacName = new Scanner(System.in).next();//輸入網(wǎng)卡名稱 //默認輸入:VMware Virtual Ethernet Adapter for VMnet8 String NetId = '';//記錄IP String inputMacName ='VMware Virtual Ethernet Adapter for VMnet8'; System.out.println('您輸入的是:'+inputMacName); for (NetInfo h : mp.keySet()) { if((h.getMacName().trim()).equals(inputMacName)){System.out.println('n網(wǎng)卡名字:' + mp.get(h) + 'n' + h);NetId = h.getIPV4();System.out.println('nIP:'+NetId); //打印出此IP(后面求出網(wǎng)絡(luò)號、廣播號) } } //分解數(shù)組 String []netIPArr = NetId.split('.'); for(int i= 0;i<netIPArr.length;i++){ System.out.println(netIPArr[i]); } //求網(wǎng)絡(luò)號: System.out.println('網(wǎng)絡(luò)號:'+netIPArr[0]+'.'+netIPArr[1]+'.'+netIPArr[2]+'.'+0); System.out.println('廣播號:'+netIPArr[0]+'.'+netIPArr[1]+'.'+netIPArr[2]+'.'+255); //訪問所有鄰居 HashSet<String> nei = new HashSet<>();//存儲所有可達的鄰居 for(int i= 1;i<5;i++){ String str1 = exeCmd('ping '+netIPArr[0]+'.'+netIPArr[1]+'.'+netIPArr[2]+'.'+i); System.out.println(str1); //判斷是否Ping 通 Pattern pt9 = Pattern.compile('TTL'); Matcher mt9 = pt9.matcher(str1); if (mt9.find()){//如果能ping 通,直接加入到set集合內(nèi)//System.out.println(netIPArr[0]+'.'+netIPArr[1]+'.'+netIPArr[2]+'.'+i);nei.add(netIPArr[0]+'.'+netIPArr[1]+'.'+netIPArr[2]+'.'+i);//存儲 }else{//如果ping 不同,使用arp 查看回應(yīng)String str2 = exeCmd('arp -a');Pattern pt10 = Pattern.compile(netIPArr[0]+'.'+netIPArr[1]+'.'+netIPArr[2]+'.'+i);Matcher mt10 = pt10.matcher(str2);if (mt10.find()){//如果arp 返回數(shù)據(jù),也加入到set集合內(nèi) nei.add(netIPArr[0]+'.'+netIPArr[1]+'.'+netIPArr[2]+'.'+i);//存儲} } } //輸出所有可達的鄰居 System.out.println('所有可達的鄰居:'); for(String s : nei){ System.out.println(s); } }}

Java如何在命令行中獲取指定數(shù)據(jù)

Java如何在命令行中獲取指定數(shù)據(jù)

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標簽: Java
相關(guān)文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
久久婷婷国产综合尤物精品| 国产一区二区三区视频在线播放| 久久精品国产亚洲高清剧情介绍| 亚洲免费在线精品一区| 亚洲欧洲日产国码二区| 欧美黄免费看| 欧美国产精品久久| 91色婷婷久久久久合中文| 精品不卡在线视频| 成人免费av网站| 欧美成人艳星乳罩| 成人性生交大片免费看中文| 欧美人牲a欧美精品| 激情综合网av| 91.麻豆视频| 国产成人精品免费看| 日韩三级视频中文字幕| 成人一道本在线| 欧美电影免费观看完整版| 暴力调教一区二区三区| 久久精品亚洲乱码伦伦中文 | 国产精品自拍在线| 欧美区视频在线观看| 国产一区不卡精品| 日韩三区在线观看| 成人福利视频在线| 国产午夜亚洲精品不卡| 国产精品啊v在线| 亚洲欧美日韩成人高清在线一区| 99热这里只有成人精品国产| 亚洲一区二区三区美女| 久久中文字幕一区二区三区| 麻豆国产精品777777在线| 欧美久久免费观看| 北条麻妃一区二区三区| 亚洲国产精品成人综合| 日韩午夜激情| 日本一不卡视频| 777亚洲妇女| 不卡的av中国片| 国产婷婷色一区二区三区四区| 国内揄拍国内精品久久| 亚洲乱码国产乱码精品精可以看| 久久精品亚洲| 国内精品视频一区二区三区八戒 | 香蕉久久一区二区不卡无毒影院| 欧日韩精品视频| 国产69精品久久99不卡| 亚洲国产精品精华液2区45| 国产日韩欧美二区| 久久99精品久久久久久动态图| 日韩欧美国产麻豆| 欧美伊人久久大香线蕉综合69| 欧美日韩综合| 久久久久久夜精品精品免费| 影音先锋在线一区| 偷偷要91色婷婷| 91精品国产综合久久婷婷香蕉| jlzzjlzz欧美大全| 中文字幕欧美一| 久久亚洲午夜电影| 国产a视频精品免费观看| 亚洲国产精品t66y| 久久男女视频| 成人h版在线观看| 亚洲精品视频在线| 884aa四虎影成人精品一区| 红桃视频国产精品| 久久精品国产一区二区三区免费看 | 91在线播放网址| 亚洲人成在线播放网站岛国| 在线观看精品一区| 91在线观看美女| 日韩高清国产一区在线| 精品免费99久久| 国产精品综合色区在线观看| 国产老妇另类xxxxx| 国产精品久久久久久久久晋中 | 媚黑女一区二区| 国产成人精品影视| 亚洲人成网站影音先锋播放| 欧美日韩中文国产| 国产精品九九| 激情综合网最新| 国产精品视频线看| 欧美图区在线视频| 国内精品嫩模av私拍在线观看 | 一区二区三区四区国产| 国产一区二区三区国产| 国产精品美女久久久久aⅴ国产馆| 色婷婷av一区| 欧美福利一区| 免费av成人在线| 亚洲欧洲韩国日本视频| 欧美日本不卡视频| 一区二区精品国产| 99精品久久99久久久久| 日韩成人一区二区| 国产精品视频在线看| 欧美理论电影在线| 国产欧美91| 91麻豆福利精品推荐| 久久精品国产一区二区三区免费看| 国产日韩欧美麻豆| 欧美巨大另类极品videosbest | 欧美日韩综合在线免费观看| 亚洲国产精选| av亚洲产国偷v产偷v自拍| 日韩国产精品91| 亚洲四区在线观看| 欧美电影免费观看高清完整版在线 | 在线国产电影不卡| 亚洲先锋成人| 成人黄色综合网站| 久久精品国产色蜜蜜麻豆| 亚洲人成7777| 久久久久久久精| 欧美一区永久视频免费观看| 国产欧美在线| 欧美日韩国产综合在线| 成人午夜精品一区二区三区| 男女性色大片免费观看一区二区 | 欧美自拍偷拍一区| 国产一区二区三区的电影| 欧美国产先锋| 成人精品亚洲人成在线| 日本欧美一区二区三区| 一区二区三区在线视频播放| 久久久久久久久久久黄色| 欧美肥胖老妇做爰| 色呦呦日韩精品| 一区二区三区成人精品| 欧美视频一区| 99国产精品视频免费观看| 精品在线播放免费| 五月婷婷综合网| 亚洲一区二区三区中文字幕| 国产精品女同一区二区三区| 精品国产电影一区二区| 欧美精品第一页| 欧美午夜影院一区| 91成人在线精品| 久久九九99| 午夜综合激情| 在线亚洲成人| 国产在线精品一区二区中文| 91小视频在线观看| proumb性欧美在线观看| 高清在线不卡av| 国产高清亚洲一区| 国产精品自在在线| 精品综合久久久久久8888| 日韩电影在线免费| 亚洲成a人片在线不卡一二三区| 亚洲男人的天堂在线aⅴ视频| 国产精品蜜臀av| 中文字幕在线不卡视频| 最近日韩中文字幕| 亚洲图片欧美激情| 亚洲欧美日韩精品久久久久| 中文字幕五月欧美| 综合色天天鬼久久鬼色| 亚洲欧洲99久久| 亚洲人123区| 一区二区三区在线免费播放| 一区2区3区在线看| 夜色激情一区二区| 亚洲国产美女搞黄色| 亚洲无线码一区二区三区| 亚洲一区二区三区影院| 亚洲午夜一区二区| 性做久久久久久免费观看欧美| 天天综合日日夜夜精品| 天天色 色综合| 蜜臀av性久久久久蜜臀av麻豆| 麻豆精品在线看| 狠狠色狠狠色合久久伊人| 国产精品欧美精品| 91精品国产综合久久久久| 欧美日韩激情一区| 欧美军同video69gay| 91精品中文字幕一区二区三区| 欧美高清视频在线高清观看mv色露露十八| 欧美日韩精品一区二区在线播放| 欧美日韩的一区二区| 91麻豆精品国产91久久久久久久久 | 亚洲无线视频| 一本色道久久综合| 久久国产高清| 91久久国产最好的精华液| 欧美日韩视频在线观看一区二区三区 | 亚洲激情午夜| 国产欧美日本| 久久精品人人做人人爽电影蜜月| 色诱视频网站一区| 欧美日韩国产一二三| 欧美成人三级在线| 欧美韩国日本综合| 亚洲欧美色综合| 日韩高清不卡一区二区|