使用java实现通过Linux上的网络地址得到其mount点:
public String getLocalPath(String mountPath) {
log.debug("需要mount的网络路径:" + mountPath);
//shell命令脚本
String shell = "mount | grep " + mountPath;
log.debug("shell命令脚本:" + shell);
String[] cmd = {"sh", "-c", shell};
BufferedReader input = null;
String[] temp = null;
try {
Process process = Runtime.getRuntime().exec(cmd);
input = new BufferedReader(new InputStreamReader(process.getInputStream()));
log.debug("得到的输入流对象:" + input);
String line = "";
while ((line = input.readLine()) != null) {
log.debug("得到的输入流信息是:" + line);
temp = line.split("\\s+");
if(temp[0].equals(mountPath)){
break;
}else{
temp = null;
}
}
} catch (IOException e) {
log.error("执行shell脚本异常",e);
}finally{
if(input != null){
try {
input.close();
} catch (IOException e) {
log.error("流关闭异常",e);
}
}
}
if(temp == null){
log.debug("没有找到" + mountPath + "的路径mount路径");
return null;
}else{
return temp[2];
}
}