java实现根据Linux上的mount的网络路径取到Linux上的mount的本地地址

使用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];
		}
	}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值