public String getMACAddressByWindows() throws Exception {
String result = "";
Process process = Runtime.getRuntime().exec("ipconfig /all");
BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream(), "GBK"));
int index = -1;
String line;
boolean getInfo = false;
while ((line = br.readLine()) != null) {
if(line.contains("以太网适配器 以太网:") || getInfo){
getInfo = true;
index = line.indexOf("物理地址");
if (index >= 0) {
index = line.indexOf(":");
if (index >= 0) {
result = line.substring(index + 1).trim();
break;
}
}
}
}
br.close();
LoggerUtil.info(logger,"Mac address -> {0}",result);
return result;
}
public String getLinuxMACAddress() {
String mac = "";
BufferedReader bufferedReader = null;
Process process = null;
try {
process = Runtime.getRuntime().exec("ip addr");
bufferedReader = new BufferedReader(new InputStreamReader(
process.getInputStream()));
String line = null;
int index = -1;
while ((line = bufferedReader.readLine()) != null) {
index = line.toLowerCase().indexOf("link/ether");
if (index != -1) {
String[] macs = line.trim().split(" ");
mac = macs[1].trim().toLowerCase();
break;
}
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (bufferedReader != null) {
bufferedReader.close();
}
} catch (IOException e1) {
e1.printStackTrace();
}
bufferedReader = null;
process = null;
}
LoggerUtil.info(logger,"MAC address -> {0}", mac);
return mac;
}
获取Linux和windows的MAC地址
最新推荐文章于 2024-11-11 22:04:04 发布