欢迎使用CSDN-markdown编辑器
来源:互联网 发布:小学英语课本同步软件 编辑:程序博客网 时间:2024/06/08 04:58
/**
* commons-exec.jar
* 根据路径执行文件
* @param path
* @return
*/
public static String exec(String path){
if(StringUtil.isEmpty(path)){ return null; } try { //创建一个命令行 CommandLine cmdLine = CommandLine.parse(path); //参数一 cmdLine.addArgument("pararm_1"); //参数二 cmdLine.addArgument("pararm_2"); //执行流 DefaultExecutor executor = new DefaultExecutor(); //定义一组预期退出值 //executor.setExitValue(1); executor.setExitValues(null); //监管机构-监管进程执行时间 --单位为毫秒 ExecuteWatchdog watchdog = new ExecuteWatchdog(10); executor.setWatchdog(watchdog); ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); ByteArrayOutputStream errorStream = new ByteArrayOutputStream(); PumpStreamHandler streamHandler = new PumpStreamHandler(outputStream,errorStream); executor.setStreamHandler(streamHandler); int ex = executor.execute(cmdLine); //拿到执行程序中输出内容 String out = outputStream.toString("gbk"); //拿到执行程序中执行异常内容 String error = errorStream.toString("gbk"); Log.info(CommonsExecUtil.class, "Method[exec]执行命令行文件名称:{},执行输出:{},执行异常信息:{},执行结果:{}", path,out,error,ex); } catch (IOException e) { e.printStackTrace(); } return null; } public static void main(String[] args) { exec("D:/svn/1.bat");}
/****************java直接调用runtime****************************/
import java.io.IOException;
import java.io.InputStream;
public class InvokeBat2 {
public void runbat(String batName) {
try {
Process ps = Runtime.getRuntime().exec(batName);
InputStream in = ps.getInputStream();
int c;
while ((c = in.read()) != -1) {
System.out.print(c);// 如果你不需要看输出,这行可以注销掉
}
in.close();
ps.waitFor();
} catch (IOException ioe) { ioe.printStackTrace(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("child thread done");}public static void main(String[] args) { InvokeBat2 test1 = new InvokeBat2(); String batName = "F:\\database_backup\\ngx_backup\\backup_ngx.bat"; test1.runbat(batName); System.out.println("main thread");}
}
0 0
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 欢迎使用CSDN-markdown编辑器
- 通过up、down、enter键实现搜索结果选择功能(模拟搜索引擎)
- 被改错的密码
- 为什么使用Composer?
- wxpython入门级笔记
- java 执行命令、调用bat文件、调用外部程序的两种方法
- 欢迎使用CSDN-markdown编辑器
- 百度地图的定位
- 《计算机系统概论》
- jetty
- 第三方登录and分享
- EditText最大值提醒
- 使用JS提交表单
- mjpg-streamer
- Android获取SHA值