未经允许,禁止转载!!!

package practice;

import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader; public class cmdadb { public void executeCMDconsole(String cmd) {
//此方法为打印日志到控制台!!!!!!!!!!!!
//此方法跑成功!!! System.out.println("在cmd里面输入"+cmd);
Process p;
try {
p = Runtime.getRuntime().exec(cmd);
System.out.println(":::::::::::::::::::开始在控制台打印日志::::::::::::::::::::::>>>>>>");
//p.waitFor();
BufferedReader bReader=new BufferedReader(new InputStreamReader(p.getInputStream(),"gbk"));
String line=null;
while((line=bReader.readLine())!=null)
System.out.println(line);
} catch (IOException e) {
e.printStackTrace();
}
} public String executeCMDfile(String[] cmmands, String logToFile, String dirTodoCMD ) throws IOException {
//此方法为輸出日志到指定文件夹!!!!!!!!!!!!
//此方法跑成功!!!
//如果 String cmmand 那麼 String cmmand = "adb logcat -v time > d:/adb.log";
//String[] cmmands 所以 String commands[] = { "adb", "logcat","-v","time"};
//String logToFile 將日誌保存到logToFile
//String dirTodoCMD 在dirTodoCMD執行cmd命令
//由于將日志輸出到文件裡面了,就不能再将日誌輸出到console了 try {
ProcessBuilder builder = new ProcessBuilder(cmmands);
if (dirTodoCMD != null)
builder.directory(new File(dirTodoCMD));
builder.redirectErrorStream(true);
builder.redirectOutput(new File(logToFile));
Process process = builder.start();
process.waitFor();
// 得到命令执行后的结果
InputStream is = process.getInputStream();
BufferedReader buffer = new BufferedReader(new InputStreamReader(is, "gbk"));
String line = null;
StringBuffer sbBuffer = new StringBuffer();
while ((line = buffer.readLine()) != null) {
sbBuffer.append(line);
} is.close();
return sbBuffer.toString();
} catch (Exception e) {
e.printStackTrace();
}
return null;
} public static void main(String[] args) throws IOException {
//String cmd="D:/Android/android-sdk-windows/platform-tools/adb logcat -v time";
//String cmd2="adb devices";
//String cmd3="adb logcat -v time";
//String cmd4="adb logcat -v time > d:/adb.log";
cmdadb adbc = new cmdadb();
adbc.executeCMDconsole("adb logcat -v time");
String commands[] = { "adb", "logcat","-v","time"};
adbc.executeCMDfile(commands, "D:/adb.logs", "C:/Users/wb-cjz286752");
//System.out.println(result);由于將日志輸出到文件裡面了,就不能再将日志輸出到console了
} }

java调用执行cmd命令的更多相关文章

  1. java中执行cmd命令

    一.java执行cmd命令的三种方式:http://www.jb51.net/article/80829.htm 参考:https://www.cnblogs.com/zhufu9426/p/7928 ...

  2. JAVA之执行cmd命令

    感言在前:时隔好久没有更新博客园了,忙东忙西也没忙出个什么之所以然来.回首过去一两个月,只能用“疲倦”两个字来形容,而且是身心疲惫.每天11.12个小时的工作我都没觉得烦,但是总是想克服却又很难克服的 ...

  3. Java程序执行cmd命令

    import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.i ...

  4. java调用执行cmd指令启动weblogic

    这里的例子是启动weblogic import java.io.BufferedReader; import java.io.IOException; import java.io.InputStre ...

  5. Java 调用并执行cmd命令

    cmd java 调用 执行 概要: Java 调用并执行cmd命令 Java | 复制 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 2 ...

  6. 如何使用Java执行cmd命令

    用JAVA代码实现执行CMD命令的方法! Runtime rt = Runtime.getRuntime(); Process p = rt.exec(String[] cmdarray);     ...

  7. java执行cmd命令并获取输出结果

    1.java执行cmd命令并获取输出结果 import java.io.BufferedReader; import java.io.InputStreamReader; import org.apa ...

  8. Java执行cmd命令、bat脚本、linux命令,shell脚本等

    1.Windows下执行cmd命令 如复制 D:\tmp\my.txt 到D:\tmp\my_by_only_cmd.txt 现文件如图示: 执行代码: private static void run ...

  9. Atitit.执行cmd 命令行 php

    Atitit.执行cmd 命令行 php 1. 执行cmd 命令行,调用系统命令的基础 1 1.1. 实际执行模式 1 1.2. 空格的问题 1 1.3. 中文路径的问题,程序文件读取编码设置 1 1 ...

随机推荐

  1. UVALive 7721 K - 2-ME Set 集合dp,所有数的位或来表示状态。

    /** 题目:UVALive 7721 K - 2-ME Set 链接:https://vjudge.net/problem/UVALive-7721 题意:给定n个数,从中取出一个集合,至少包含两个 ...

  2. servlet里面拿到common.property的属性

    ---------------------common.property文件----------------------- kongxc_wx_dinghuo_orderSendMusic=http: ...

  3. Des加密方法

    //默认密钥向量 private static byte[] Keys = { 0x12, 0x34, 0x56, 0x78, 0x90, 0xAB, 0xCD, 0xEF }; private st ...

  4. tcpdf

    将文档整为pdf格式文档 网址:http://www.tcpdf.org/examples.php

  5. ios APP 在 waiting for review时重新上传程序

    今天上传程序后发现了一个挺大的bug,想重新上传app,于是搜了一下,现记录一下: 点击details进入后在link点击binary details,进入之后点击右上角reject this bin ...

  6. iOS-本地沙盒路径

    沙盒几个路径: 沙盒里的文件夹包括Documents.Library.tmp.这三个文件夹的作用请点击这里.接下来我们来讲解如何获取Documents.Library.tmp的路径. 获取沙盒根目录 ...

  7. 66、多种多样的App主界面Tab(1)------ ViewPager实现Tab

    <?xml version="1.0" encoding="utf-8"?> <!-- bottom.xml --> <Linea ...

  8. STL中的排序算法

    本文转自:STL中的排序算法 1. 所有STL sort算法函数的名字列表: 函数名    功能描述 sort   对给定区间所有元素进行排序 stable_sort 对给定区间所有元素进行稳定排序 ...

  9. ubuntu 下 Nginx相关设置

    ubuntu安装Nginx之后的文件结构大致为: 所有的配置文件都在/etc/nginx下,并且每个虚拟主机已经安排在了/etc/nginx/sites-available下 启动程序文件在/usr/ ...

  10. python3 简单爬虫

    爬取虎牙直播分类页面的主播的头像,名字,人气 今天学习了python3爬虫,上课闲着无聊,自己写了一个爬虫 就顺着老师思路 爬了虎牙直播分类页面的主播,头像,名字,和人气 HuYaCateScrapy ...