Java操作终端的方法

参考下面链接 有window 和 mac的

https://blog.csdn.net/xh16319/article/details/17302947

 

package edu.test;
import java.io.InputStreamReader;
import java.io.LineNumberReader;
	 
	/**
	 * java在linux环境下执行linux命令,然后返回命令返回值。
	 * @author lee
	 */
	public class ExecLinuxCMD {
	 
	    public static Object exec(String cmd) {
	        try {
	            String[] cmdA = { "/bin/sh", "-c", cmd };
	            Process process = Runtime.getRuntime().exec(cmdA);
	            LineNumberReader br = new LineNumberReader(new InputStreamReader(
	                    process.getInputStream()));
	            StringBuffer sb = new StringBuffer();
	            String line;
             while ((line = br.readLine()) != null) {
	                System.out.println(line);
	                sb.append(line).append("\n");
	            }
	            return sb.toString();
	        } catch (Exception e) {
	            e.printStackTrace();
	        }
	        return null;
	    }
	 
	    public static void main(String[] args) {
	        // TODO Auto-generated method stub
	        String pwdString = exec("pwd").toString();
	        String netsString = exec("netstat -nat|grep -i \"80\"|wc -l").toString();----------------------- 我这里拿来执行python文件的,这里赋值 是python里面return回来的值 ---print的不会返回回来
	         
	        System.out.println("==========获得值=============");
	        System.out.println(pwdString);
	        System.out.println(netsString);
	    }
	 
	}

  

 

原文地址:https://www.cnblogs.com/kaibindirver/p/15797226.html