shell执行工具类

package com.fengtu.sparktest.utils;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import java.io.IOException;

public class ShellExcutor {
   private  static Logger logger = LoggerFactory.getLogger(ShellExcutor.class);
   public static void exeCmd(String cmd) throws Exception {
      String os = System.getProperty("os.name");
      String [] shell;
      if(os.toLowerCase().contains("windows")){
         shell =new String[]{"cmd","/C",cmd}; 
      }else if (os.toLowerCase().contains("linux")){
         shell =new String[]{"/bin/sh","-c",cmd}; 
      }else{
         throw new Exception("not support os:"+os); 
      }
      try {
         Runtime runtime = Runtime.getRuntime();
            final Process process = runtime.exec(shell);
            StreamHandler errorStreamHandler = new StreamHandler(process.getErrorStream());
            errorStreamHandler.start();
            process.waitFor();
      } catch (IOException e1) {
         logger.error("cmd: "+cmd +", exception:"+e1.getMessage());
      }
   }
   
// public static void main(String[] args) throws Exception {
//    exeCmd("cd F:\\项目\\数据平台-20180416\\jar && java -jar EffectTestPlatform.jar 64 01374443 9091 755_0605_deptcode_diff_sql.csv {\\\"ak\\\":\\\"a4fbd3a08ecc4f9e41bc9b06421ef3b5\\\",\\\"city\\\":\\\"755\\\",\\\"opt\\\":\\\"norm\\\"} 755_0605_deptcode_diff_rslt.csv onlyForResult");
// }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值