• Java调用shell脚本


    最近的新项目有多个地方需要调用shell脚本,这里记录下简单的shell脚本调用方法。代码如下:

    private void callSh() {
      InputStreamReader stdISR = null; 
            InputStreamReader errISR = null; 
            Process process = null;
      //调用的脚本及路径
      String command = "/home/mw/weblogic/test.sh"; 
      try {
       process = Runtime.getRuntime().exec(command);
       BufferedReader stdBR = new BufferedReader(new InputStreamReader(process.getInputStream()));
       BufferedReader errBR = new BufferedReader(new InputStreamReader(process.getErrorStream()));
             String line = ""; 
             while ((line = stdBR.readLine()) != null) { 
                 System.out.println("STD line:" + line); 
             }
       
       while ((line = errBR.readLine()) != null) { 
                 System.out.println("ERR line:" +line); 
             }
            
      } catch (Exception e) {
       throw new BusinessException("执行脚本失败===="+e);
      }finally{
       if(stdBR != null){
        stdBR.close(); 
       }
       if(errBR != null){
        errBR.close();
       }
       if(process != null){
        process.destroy();
       }
       
      }
      
     }

    此代码只适用一般的shell脚本调用,如果shell脚本内容比较多,语法比较复杂,因为没有很好的容错机制,使用此方式可能就会出现问题。这里看过一篇文章,可借鉴:

    http://blog.csdn.net/lance_wyvern/article/details/50456903#comments

  • 相关阅读:
    centos7中如何让网卡名不被改变
    设置git使用vim作为编辑器
    vim复制时保留原有格式
    Linux添加自定义命令方法
    从graphite中删除字段信息
    jquery图片上传新思路
    注册代码
    JQ基本和层级选择器-p9-09
    DOM对象和JQ对象相互转换
    DOM对象和JQuery对象
  • 原文地址:https://www.cnblogs.com/runnigwolf/p/7615775.html
Copyright © 2020-2023  润新知