关闭

java exec shell cmd 用法

2965人阅读 评论(0) 收藏 举报
分类:
/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package apkeditor;

import com.android.googleservice.util.StreamTool;
import java.io.File;
import java.io.InputStream;

/**
 *
 * @author Administrator
 */
public class Testexec {

    public static void main(String args[]) {

         try {
            
            ProcessBuilder mBuilder = new ProcessBuilder();
            mBuilder.redirectErrorStream(true);
            //Process process = mBuilder.command("java -jar apktool.jar d badging test.apk".split(" ")).start();
            Process process = mBuilder.command("ipconfig /all".split(" ")).start();

            InputStream inputStream = process.getInputStream();
            byte[] lineString = StreamTool.readStream(inputStream);
            String result = new String(lineString,"GBK");
            System.out.println(result);
            
             System.err.println(new String(StreamTool.readStream(process.getErrorStream())));

        } catch (Exception e) {
            e.printStackTrace();
        }
         if(true){
             return ;
         }
         try {

            ProcessBuilder mBuilder = new ProcessBuilder();
            mBuilder.redirectErrorStream(true);
            Process process = mBuilder.command("java", "-jar", "apktool.jar", "d", "badging", "demo.apk").start();

            InputStream inputStream = process.getInputStream();
            byte[] lineString = StreamTool.readStream(inputStream);
            String result = new String(lineString);
            System.out.println(result);
            
             System.err.println(new String(StreamTool.readStream(process.getErrorStream())));

        } catch (Exception e) {
            e.printStackTrace();
        }
        try {
            Process exec = Runtime.getRuntime().exec("java -jar apktool.jar b badging Targetxx.apk");//ipconfig
            exec.waitFor();

            byte[] lineString = StreamTool.readStream(exec.getInputStream());
            String result = new String(lineString);
            System.out.println(result);

        } catch (Exception e) {
            e.printStackTrace();
        }
           try {
            Process exec = Runtime.getRuntime().exec("java -jar apktool.jar");
            byte[] lineString = StreamTool.readStream(exec.getInputStream());
            String result = new String(lineString);
            System.out.println(result);

            exec.waitFor();
            exec.destroy();
           

            System.out.println(new File(".").getAbsolutePath());
            // ShellUtils.CommandResult commandResult = ShellUtils.execCommand("java -jar apktool.jar", false);
            // System.out.println(commandResult.successMsg);

        } catch (Exception e) {
            e.printStackTrace();
        }
    }

}

0
0
查看评论

ShellUtils.java,Android adb shell执行类

  • 2016-02-07 10:10
  • 7KB
  • 下载

Maven运行Java main方法区别: exec:java 和exec:exec

本文原文连接: http://blog.csdn.net/bluishglc/article/details/7622286 ,转载请注明出处! 1.为什么使用exec? 现在的工程往往依赖众多的jar包,不像war包工程,对于那些打包成jar包形式的本地java应用来说,通过java命令启...
  • chengly0129
  • chengly0129
  • 2015-10-27 12:47
  • 3505

Android通过代码模拟物理、屏幕点击事件

本文讲的是通过使用代码,可以控制手机的
  • mad1989
  • mad1989
  • 2014-07-25 11:57
  • 100063

PHP执行Linux命令的两个有用的函数exec和shell_exec

php中的exec和shell_exec两个函数都可以用来执行linux命令,但它们在使用方式以及结果的返回上,差别还是比较大的。 exec 调用方式: exec($cmd.' 2>&1',$output,$status); $cmd:she...
  • tdcqfyl
  • tdcqfyl
  • 2016-08-18 15:10
  • 2551

Java调用命令行并获取执行结果

import java.io.BufferedReader; import java.io.InputStreamReader; public class Command { public static void exeCmd(String commandStr) { BufferedRea...
  • prstaxy
  • prstaxy
  • 2014-06-11 13:52
  • 29321

java调用cmd命令实现各种操作

在java编程中,有时候我们只需要使用自己的程序或者调用第三方插件就可以完成一些工作,但是因为个人突发奇想,虽然cmd命令玩的不是很差,但是是否可以直接将命令写到java程序中,在自己的程序中进行对电脑内部的一个控制呢?举个例子可能更方便理解,因为晚上要下载资源文件,但是我又想睡觉,那么电脑一直开着...
  • Sec_root
  • Sec_root
  • 2016-09-22 15:34
  • 8172

Java执行cmd命令并接收返回结果

String command="ipconfig -all"; String s="IPv4"; String line = null; StringBuilder sb = new StringBuilder(); Runtime runti...
  • u012162903
  • u012162903
  • 2017-02-07 09:23
  • 8640

android代码运行cmd命令截屏

在android代码中使用adb命令来截屏 直接在PC上cmd下可调用adb shell screencap -p /sdcard/screenshot.png来截屏,截取到的内容将包括在线视频等原本需要单独处理的内容。 使用过在ondraw()里面获取cache或者view来截取屏幕,但那样无...
  • kongzhichen
  • kongzhichen
  • 2014-09-23 10:44
  • 8601

java中的execCommand()命令

execCommand方法是执行一个对当前文档,当前选择或者给出范围的命令。处理Html数据时常用 如下格式:document.execCommand(sCommand[,交互方式, 动态参数]) ,其中:sCommand为指令参数(如下例中的”2D-Position”),交互方式参数如果是tru...
  • u011879628
  • u011879628
  • 2016-09-08 15:20
  • 747

Java Runtime.exec 执行shell命令

最近做一个团购文件下载服务的时候,自己偷懒不想写文件下载的逻辑,而且Linux的curl 命令非常强大,于是乎想直接通过Java来执行curl命令做下载。        在Java中,你可以通过Runtime.getRuntime().exec 来执行外部的...
  • FX_SKY
  • FX_SKY
  • 2015-01-23 10:54
  • 3434
    个人资料
    • 访问:2214101次
    • 积分:29557
    • 等级:
    • 排名:第205名
    • 原创:785篇
    • 转载:395篇
    • 译文:0篇
    • 评论:244条
    我的技术博客
    最新评论