使用java执行bat、sh脚本文件

这篇具有很好参考价值的文章主要介绍了使用java执行bat、sh脚本文件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在工作中,由于需求,需要完成让java去调用.bat文件和.sh文件的操作,接下来开始编码

此处用到了糊涂工具类

maven如下

<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.8.10</version>
</dependency>
public void run(){
        String file = "D:\\pan";
        String cmd = "run";
        Runtime runtime = Runtime.getRuntime();
        Process exec = null;
        if (FileUtil.isWindows()){
            exec = runtime.exec("cmd /c cd " + file + " && " + cmd + ".bat");
        }else {
            exec = runtime.exec("bash " + cmd + ".sh",null,new File(file));
        }
        exec.waitFor();
        //取得命令结果的输出流
        InputStream is = exec.getInputStream();
        //用一个读输出流类去读
        InputStreamReader isr = new InputStreamReader(is);
        BufferedReader br = new BufferedReader(isr);

        String line = null;
        while((line = br.readLine())!=null){
            System.out.println(line);
        }
        is.close();
        isr.close();
        br.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
}

由此代码来执行bat或sh脚本文件(PS:糊涂工具包用不用无所谓,只是用来判断是否为windows系统的)文章来源地址https://www.toymoban.com/news/detail-522939.html

到了这里,关于使用java执行bat、sh脚本文件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Shell脚本中文英文多语言国际化和命令行批处理(bash sh cmd bat)中定义函数的简单写法

    有时候为了方便别人使用,我们会选择去编写各种各样的命令行脚本:给Windows用户编写 .bat cmd批处理脚本,给macOS、Linux用户编写 .sh bash shell脚本。 面向国内用户当然应当首选中文作为脚本的显示语言,如果还要支持海外用户使用,那么能提供国际化多语言( i18n )支持那是

    2024年02月08日
    浏览(53)
  • Windows 开机自动执行bat脚本

    1. 打开“我的电脑”,地址栏输入 按回车进入该目录,将需要开机立即执行的bat脚本放入该目录下即可。 注意: 该脚本也仅仅是临时的,一次性的,如果你在脚本里边设置了环境变量,那也仅在这个脚本里边有效,不会全局有效。 如果要设置全局变量,可使用 setx 进行设置

    2024年02月10日
    浏览(48)
  • nginx配置sh脚本远程执行一键安装

    本地多机重复操作某些shell指令,分步执行,很耗费时间, 需要远程一键部署,傻瓜化运维,更为通用安装。 即参考docker通用安装 总体思路: 1、容器化nginx部署; 2、准备好要访问的目录,这里是一个文件夹,映射到nginx里面; 3、修改nginx配置,默认映射到2中的目录; 4、

    2024年02月01日
    浏览(43)
  • Windows环境使用bat脚本启动Java服务

    Java项目一般会被打包成jar后启动,在windows系统中可以通过终端窗口cmd启动jar包,即在jar包所在的目录中打开cmd,或在cmd中进入到jar包目录,执行如下命令: 在bat脚本中执行java服务,命令与cmd中类似,可能会出现在启动之前,该服务要使用的端口已经被占用,或者说该服务已

    2024年02月11日
    浏览(49)
  • 在window使用bat批处理文件执行cmd命令

    1、新建一个txt文本文档。然后在文档里面写入如下代码: 意思是在路径E:environmentELKlogstash-6.5.4bin执行logstash -f logstash.conf命令。路径、命令用隔开,命令之间也用隔开。如果还需要新增多条命令如Java-version则在logstash -f logstash.conf后面加java-version代码如下: 2、编辑好之后,

    2024年02月11日
    浏览(49)
  • 在当前bash(sh)中执行脚本和注册函数

    在研究《管理Python虚拟环境的脚本》时,我们使用了source指令而没有使用sh或者bash来执行脚本,就是因为source指令可以让脚本在当前bash(sh)中执行;而sh或者bash则会新启动一个bash来执行。 我们可以通过下面这个脚本做测试 processInfo: 45322 bash 40883 bash 当前bash的进程ID是40883,新

    2024年01月20日
    浏览(52)
  • 使用批处理文件(.bat)启动多个CMD窗口并执行命令

    由于每次启动本机的kafka都需要打开2个cmd窗口,分别启动zookeeper服务和kafka服务,操作相对繁琐,于是想起了批处理来帮忙一键启动。 在桌面新建一个txt文件,改后缀名为.bat,并加上下面的代码。 代码结尾不加pause的原因是,执行完关闭窗口,因为不需要该窗口保留着,免得

    2024年02月16日
    浏览(46)
  • Linux终端执行.sh脚本,提示权限不够的解决办法

    错误提示如下: [root]# ./run_train_p bash: ./run_train_p: 权限不够 解决方法 [root]# chmod 777 ./run_train_p [root]# ./run_train_p

    2024年02月14日
    浏览(45)
  • BAT批处理脚本自动执行指定路径下程序

    需求来源: 使用nacos+springboot的微服务架构,每次跑程序前要先启动nacos比较麻烦,然后就写了个简单的批处理,双击直接打开一个cmd执行nacos启动命令; 知识点: 1. start cmd /k    启动一个CMD且不关闭cmd 2.start cmd /c    启动一个CMD且关闭cmd 3.  start cmd /k  \\\"命令1 命令2 命令3\\\"

    2024年02月16日
    浏览(52)
  • JVM执行引擎——为什么Java是半编译半解释语言

            起初设计者的初衷是将字节码文件翻译为机器语言的指令来执行即可,就诞生了解释器。但是采用一行行来解释的 效率比较低 ,JIT编译器会将编译后的机器码做一个缓存的操作,放在方法区的JIT代码缓存中,是否需要启用JIT编译器直接将字节码编译为机器码,则

    2024年02月15日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包