atitit.基于bat cli的插件管理系统.doc
atitit.基于bat cli的插件管理系统.doc
/AtiPlatf/src_atibrow/com/attilax/cmd/CmdX.java
pathx.isWebPathMode=true;
String bat=pathx.classPathParent()+"/other/del_indexs.bat";
bat=bat.replace("/", "\\");
String cmd=" cmd.exe /c \""+bat+"\"";
System.out.println(cmd);
String r=exe(cmd);
System.out.println("----echo:"+r);
System.out.println("--f");
作者:: 绰号:老哇的爪子 ( 全名::Attilax Akbar Al Rapanui 阿提拉克斯 阿克巴 阿尔 拉帕努伊 ) 汉字名:艾龙, EMAIL:1466519819@qq.com
转载请注明来源: http://www.cnblogs.com/attilax/
public static String exe(String cmd) {
try {
String r = "";
// 执行 CMD 命令
Process process = Runtime.getRuntime().exec(cmd);
//System.out.println("--echo stdin info:");
r = echoCmdResult_asStr(process.getInputStream());
//System.out.println("--echo err info:");
r = r + "\r\n" + echoCmdResult_asStr(process.getErrorStream());
//System.out.println("cmd ext finish!");
return r;
} catch (Exception e) {
throw new RuntimeException(e);
}
}
private static String echoCmdResult_asStr(InputStream cmdStream)
{
String r="";
BufferedReader reader = null;
// BufferedReader reader;
InputStreamReader inputStreamReader;
try {
inputStreamReader = new InputStreamReader(cmdStream,
"gbk");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
throw new RuntimeException(e);
}
reader = new BufferedReader(inputStreamReader);
String line = null;
try {
line = reader.readLine();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
while (line != null) {
//System.out.println(line);
r=r+"\r\n"+line;
try {
line = reader.readLine();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if (reader != null) {
try {
reader.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return r;
}
Cank
atitit.插件体系设计总结o73.doc - attilax的专栏 - 博客频道 - CSDN.NET.htm
Atitit 插件机制原理与设计微内核 c# java 的实现attilax总结 - attilax的专栏 - 博客频道 - CSDN.NET.htm
atitit.基于bat cli的插件管理系统.doc的更多相关文章
- atitit.基于 Commons CLI 的命令行原理与 开发
atitit.基于 Commons CLI 的命令行原理与 开发 1. 命令行支持的格式有以下几种: 1 2. json化,map化的命令行参数内部表示 1 3. Ati cli 2 4. CLI库 ...
- Atitit 基于图片图像 与文档混合文件夹的分类
Atitit 基于图片图像 与文档混合文件夹的分类 太小的文档(txt doc csv exl ppt pptx)单独分类 Mov10KminiDoc 但是可能会有一些书法图片迁移,因为他们很微小,需 ...
- Atitit.基于dsl的methodinvoker
Atitit.基于dsl的methodinvoker V2 new dyn invoke V3 plan Meth chain Prj cms methd_invok.bat rem a sta ...
- Atitit.hybrid混合型应用 浏览器插件,控件的实现方式 浏览器运行本地程序的解决方案大的总结---提升用户体验and开发效率..
Atitit.hybrid混合型应用 浏览器插件,控件的实现方式 浏览器运行本地程序的解决方案大的总结---提升用户体验and开发效率.. 1. hybrid App 1 1.1. Hybrid Ap ...
- Atitit 基于sql编程语言的oo面向对象大规模应用解决方案attilax总结
Atitit 基于sql编程语言的oo面向对象大规模应用解决方案attilax总结 1. Sql语言应该得到更大的范围的应用,1 1.1. 在小型系统项目中,很适合存储过程写业务逻辑2 1.2. 大型 ...
- Atitit 基于meta的orm,提升加速数据库相关应用的开发
Atitit 基于meta的orm,提升加速数据库相关应用的开发 1.1. Overview概论1 1.2. Function & Feature功能特性1 1.2.1. meta api2 ...
- Atitit 基于dom的游戏引擎
Atitit 基于dom的游戏引擎 1. 添加sprite控件(cocos,createjs,dom)1 1.1.1. Cocos1 1.1.2. createjs1 1.1.3. Dom模式2 1. ...
- atitit.基于http json api 接口设计 最佳实践 总结o7
atitit.基于http json api 接口设计 最佳实践 总结o7 1. 需求:::服务器and android 端接口通讯 2 2. 接口开发的要点 2 2.1. 普通参数 meth,p ...
- ExtJS4.2学习(13)基于表格的扩展插件---rowEditing
鸣谢:http://www.shuyangyang.com.cn/jishuliangongfang/qianduanjishu/2013-11-24/182.html --------------- ...
随机推荐
- [Lydsy1710月赛] 小B的数字
神TM 又又又又是构造题..... 很简单的化简就是,把2^k[i]都换成k[i] ,然后就可以得出 对于任意的i,k[i] * a[i] >= ∑k[]. 最优的构造肯定是使 k[i] = ...
- 10.getter & setter
自定义 Person 类 class Person: NSObject { var name: String? var age: Int? } getter & setter var _nam ...
- 【转载】 GNU GCC 选项说明
GCC 1 Section: GNU Tools (1) Updated: 2003/12/05 Sponsor: GCC Casino Winning Content NAME gcc,g++-GN ...
- C#中SortedList类的使用
C#中SortedList类 命名空间:System.Collections 程序集:mscorlib(在mscorlib.dll中) 语法:public class SortedList : IDi ...
- 输入法不能使用ctrl+shift进行切换的问题
第一种情况就是,你的输入法只有一种(而且这种输入法并不是“中文(简体) 微软拼音输入法”). 如果是只有一种输入法的话,是无法进行切换的,如果你是想要把输入法切换到无输入法状态,那么你可以通过设置任务 ...
- Ubuntu14.04终端主机名+用户名修改配色方案
首先打开终端:输入指令ls -a 然后输入指令:vi .bashrc 先按下字母A,进入编写: 在文档最后一行添加: PS1='${debian_chroot:+($debian_chroot)}\[ ...
- tensorflow cnn+rnn基本结构
#CNN x = tf.placeholder(tf.float32,[None,input_node],name="x_input") y_ = tf.placeholder(t ...
- 理解支持向量机(四)LibSVM工具包的使用
LibSVM是一款简单易用的支持向量机工具包.包括了C和Java的开发源代码.大家能够訪问其官网进行了解和下载相关文件. 这里以其官网的第一个数据集a1a 为例.练习使用多项式核和径向基核来对数据集进 ...
- 倍福TwinCAT(贝福Beckhoff)基础教程1.1 TwinCAT背景知识
本节附件中有很多PPT介绍贝福TwinCAT和EtherCAT的相关技术,在此只做简单说明. 简单总结:EtherCAT就是一种总线技术,具有速度快,稳定性高,布线简单等优点,详细可以参考下面这个PP ...
- 遍历修改django bootstrap form 为 django bootstrap3
#!/usr/bin/env python # encoding: utf-8 import re import os fname = '' bt_pattern = re.compile(r'{% ...