java调用外部命令实例
一 java 调用外部命令的方式
一般调用的方式如下:
- Process pid = null;
- String[] cmd = { "/bin/sh", "-c", "shellCommand" };
- pid = Runtime.getRuntime().exec(cmd);
- bufferedReader = new BufferedReader(new InputStreamReader(pid.getInputStream()), 1024);
- String line = null;
- while (bufferedReader != null && (line = bufferedReader.readLine()) != null) {
- System.out.println(line);
- }
- pid.waitFor();
- int success = pid.exitValue();
- pid.destroy();// to kill the subprocess
说明:
redirectErrorStream(boolean redirectErrorStream)方法,
让错误输出流与标准输出合起来,之后就可以在主线程中来process.getInputStream()就可以获得所有的输出。
- String[] cmd = { "/bin/sh", "-c", shellCommand };
- Process pid = null;
- ProcessBuilder build = new ProcessBuilder(cmd);
- build.redirectErrorStream(true);
- pid=build.start();
- bufferedReader = new BufferedReader(new InputStreamReader(pid.getInputStream()), 1024);
使用方法:
Process proc = Runtime.getRuntime().exec("java com.zjdw.course.Assign " + path); new StreamGobbler(proc.getInputStream(),"INFO").start(); new StreamGobbler(proc.getErrorStream(),"ERROR").start(); int status = proc.waitFor();
转载于:https://blog.51cto.com/drizzlewalk/432044
java调用外部命令实例相关推荐
- android java调用_关于Android中Java调用外部命令的三种方式
此所谓三种方式,只是个人认为.本人还是菜鸟初涉,所以有所错误,请指正. 个人认为,Java调用外部命令.无非三种情况: 一.是只执行命令,不考虑返回值. 二.是执行命令的同时,还需要得到返回值. 三. ...
- [Java]_[初级]_[如何调用外部命令获取输出并设置它的超时退出]
场景 在开发Java程序的时候,有时候需要执行外部命令以获取特定信息,但是外部命令执行可能由于某些原因(比如CPU,内存占用高后延迟执行)比正常执行的时间要长,有时候甚至挂起阻塞了Java线程的执行. ...
- java 执行外部命令 苹果_Java中执行外部命令
在项目中执行一个linux的shell脚本,于是需要在java环境下执行外部命令如系统命令.linux命令的需求,本人小小研究了一下,又上网查了一些资料先整理如下. java执行外部命令主要依赖两个类 ...
- java 调用window程序_Windows下Java调用可执行文件代码实例
这篇文章主要介绍了Windows下Java调用可执行文件代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 缘起: 由于没有找到java转换文件 ...
- 从Python调用外部命令
您如何在Python脚本中调用外部命令(就像我在Unix Shell或Windows命令提示符下键入的一样)? #1楼 os.system不允许您存储结果,因此,如果您要将结果存储在某个列表中或sub ...
- 调用外部程序处理文件_Python使用内置方法、模块调用外部命令
导读 Python内置调用外部命令: os.system os.popen os.popen2 os.popen3 os.popen4 commands模块 subprocess模块 在Python3 ...
- java调用exe_Windows系统中Java调用cmd命令及执行exe程序的方法
Java调用cmd命令,并输出显示信息: package com.anxin.cmd.test; import java.io.BufferedReader; import java.io.Input ...
- 如何在Python脚本中调用外部命令(就像在linux shell或Windows命令提示符下输入一样)
如何在Python脚本中调用外部命令(就像在linux shell或Windows命令提示符下输入一样) python标准库中的subprocess可以解决这个问题. from subprocess ...
- python 调用外部程序 终端异常_python调用外部命令
python调用外部命令 os.system: 输出在终端上,捕捉不到 os.popen: 只能捕捉到标准输出,捕捉不到标准错误输出 os.popen2: 返回2个对象,一个是标准输入,一个是标准输出 ...
最新文章
- fabric go sdk 依赖的安装_从这些角度看 Go 是一门很棒的语言
- 安装python 的包控制mysql的Python脚本与执行系统命令的Python脚本
- 纯键盘操作,玩转资源管理器
- C++Doubly Linked List双向链表(附完整源码)
- c++ vector 初始化_什么?还不懂c++vector的用法,你凭什么勇气来的!
- 三. 线程管理之ThreadLocal
- 【Docker】WARNING: Published ports are discarded when using host network mode
- 比较Apache Hadoop 生态系统中不同的文件格式和存储引擎的性能
- 树莓派 摄像头 html5,视频演示如何给树莓派安装摄像头模块
- maven使用java8
- Mac 安装Yarn
- 2018年,数万款小程序暴毙在路上
- 小学计算机编程学什么,小学生编程都学什么
- itunes未能连接到iphone软件更新服务器,无法联系iphone软件更新服务器,itunes无法联系iphone软件更新服务器解决方法...
- 一加6可以刷的rom_一加OnePlus 6刷机包_线刷包_救砖包_官方ROM包_固件包下载- 线刷宝ROM中心...
- 【FPGA】实战之创建项目
- 机器学习——课后习题解答
- FOC 电流采样为什么不准?你忽略了这个细节
- Spring整合MyBatis导致一级缓存失效问题
- fcntl的详细使用
热门文章
- Node.js介绍及安装
- [Oracle] 分页查询
- 在Tomcat 与weblogic 中的 日志(log4j) 配置系列二(weblogic 应用程序使用log4j)
- hashmap java 便利_java HashMap 循环遍历map的方法
- php 魔术函数,PHP魔术函数、魔术常量、预定义常量
- CodeForces - 93B(贪心+vectorpairint,double +double 的精度操作
- 电梯调度 matlab,数学建模电梯调度问题.pdf
- jquery 监听返回事件
- @RestControllerAdvice与@ControllerAdvice的区别
- apache的poi中设置Excel的单元格样式(HSSFCellStyle)和表格(HSSFSheet)