Java执行Linux命令
博客专区 > Mr_Damen 的博客 > 博客详情
Java执行Linux命令
Mr_Damen 发表于10个月前
Java执行Linux命令
  • 发表于 10个月前
  • 阅读 4
  • 收藏 1
  • 点赞 0
  • 评论 0
public static Object execCmd(String cmd) {
		try {
			String[] cmdA = { "/bin/sh", "-c", cmd };
			System.out.println("===========start===cmd============="+cmd);
			Process process = Runtime.getRuntime().exec(cmdA);
//			System.out.println("===========readresult==start==========="+cmd);
			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 execShell(String shpath) {
		try {
			System.out.println("===========shpath=============" + shpath);
			Process ps = Runtime.getRuntime().exec(shpath);
			int exitValue = ps.waitFor();
			System.out.println("===========if 0 success;==========exitValue===" + exitValue);

			BufferedReader br = new BufferedReader(new InputStreamReader(ps.getInputStream()));
			StringBuffer sb = new StringBuffer();
			String line;
			while ((line = br.readLine()) != null) {
				sb.append(line).append("\n");
			}
			String result = sb.toString();
			System.out.println(result);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

    public static void main(String[] args) {
		execCmd("echo myccmd");
		execShell("/opt/cmd.sh");
	}

 

标签: java shell
共有 人打赏支持
粉丝 5
博文 35
码字总数 6809
×
Mr_Damen
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: