/**
* @return 本地VPN是否有权限进行在线分析
*/
private boolean hasPrivilege(String account) {
boolean flag = false;
int length = account.length();
if (length < 3) {
return flag;
}
String iPSuffix = account.substring(length - 3, length);
Process process = null;
InputStream is = null;
BufferedReader reader = null;
try {
process = Runtime.getRuntime().exec("ip addr");
process.waitFor();
is = process.getInputStream();
reader = new BufferedReader(new InputStreamReader(is));
String line;
StringBuilder lineBuilder = new StringBuilder();
while ((line = reader.readLine()) != null) {
lineBuilder.append(line);
}
String result = lineBuilder.toString();
String regex = "\\d+\\.\\d+\\.\\d+\\.\\d+/\\d*";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(result);
while (matcher.find()) {
String ipString = matcher.group();
if (ipString.contains(iPSuffix)) {
flag = true;
break;
}
}
is.close();
reader.close();
process.destroy();
} catch (Exception e) {
e.printStackTrace();
} finally {
is = null;
reader = null;
process = null;
}
return flag;
}