精华内容
下载资源
问答
  • 命令提示符是在操作系统中,提示进行命令输入的一种工作...输入一些命令,cmd.exe可以执行,比如输入shutdown -s就会在30秒后关机。总之,它非常有用。打开方法:开始-所有程序-附件 或 开始-寻找-输入:cmd/cmd....

    命令提示符是在操作系统中,提示进行命令输入的一种工作提示符。在windows环境下,命令行程序为cmd.exe,是一个32位的命令行程序,微软Windows系统基于Windows上的命令解释程序,类似于微软的DOS操作系统。输入一些命令,cmd.exe可以执行,比如输入shutdown -s就会在30秒后关机。总之,它非常有用。打开方法:开始-所有程序-附件 或 开始-寻找-输入:cmd/cmd.exe 回车。它也可以执行BAT文件。下面讲述一下通过Java如何调用cmd命令并返回执行结果。

    示例代码,具体如下:package com.yoodb.blog;

    import java.io.BufferedReader;

    import java.io.InputStreamReader;

    import java.nio.charset.Charset;

    public class CommandTest {

    public static void exeCmd(String commandStr) {

    BufferedReader br = null;

    try {

    Process p = Runtime.getRuntime().exec(commandStr);

    br = new BufferedReader(new InputStreamReader(p.getInputStream(),Charset.forName("GBK")));

    String line = null;

    StringBuilder sb = new StringBuilder();

    while ((line = br.readLine()) != null) {

    sb.append(line + "\n");

    }

    System.out.println(sb.toString());

    } catch (Exception e) {

    e.printStackTrace();

    } finally {

    if (br != null){

    try {

    br.close();

    } catch (Exception e) {

    e.printStackTrace();

    }

    }

    }

    }

    public static void main(String[] args) {

    String commandStr = "ping blog.yoodb.com";

    CommandTest.exeCmd(commandStr);

    }

    }

    输出结果,具体如下:

    正在 Ping blog.yoodb.com [123.57.47.154] 具有 32 字节的数据:

    来自 123.57.47.154 的回复: 字节=32 时间=4ms TTL=52

    来自 123.57.47.154 的回复: 字节=32 时间=4ms TTL=52

    来自 123.57.47.154 的回复: 字节=32 时间=4ms TTL=52

    来自 123.57.47.154 的回复: 字节=32 时间=4ms TTL=52

    123.57.47.154 的 Ping 统计信息:

    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),

    往返行程的估计时间(以毫秒为单位):

    最短 = 4ms,最长 = 4ms,平均 = 4ms

    展开全文
  • packagecom.geostar.gfstack.opinion....importjava.io.BufferedReader;importjava.io.Closeable;importjava.io.File;importjava.io.InputStreamReader;/***@author王睿 * @date 2019/5/17 9:40*/public classDocker...

    packagecom.geostar.gfstack.opinion.util;importjava.io.BufferedReader;importjava.io.Closeable;importjava.io.File;importjava.io.InputStreamReader;/***@author王睿

    * @date 2019/5/17 9:40*/

    public classDockerSockUtils {private static final String DOCKER_SOCK_CMD_PREFIX = "curl -s --unix-socket /var/run/docker.sock http://localhost/";public static voidmain(String[] args) {

    System.out.println(execDockerSockCmd("containers/json"));

    }/*** 通过docker套接字发送HTTP请求获取数据

    *

    *@paramcmd

    *@return

    */

    public staticString execDockerSockCmd(String cmd) {return execCmd(DOCKER_SOCK_CMD_PREFIX +cmd);

    }/*** 执行系统命令, 返回执行结果

    *

    *@paramcmd 需要执行的命令

    *@return

    */

    public staticString execCmd(String cmd) {return execCmd(cmd, null);

    }/*** 执行系统命令, 返回执行结果

    *

    *@paramcmd 需要执行的命令

    *@paramdir 执行命令的子进程的工作目录, null 表示和当前主进程工作目录相同*/

    public staticString execCmd(String cmd, File dir) {

    StringBuilder result= newStringBuilder();

    Process process= null;

    BufferedReader bufrIn= null;

    BufferedReader bufrError= null;try{

    String[] command= {"/bin/sh", "-c", cmd};//执行命令, 返回一个子进程对象(命令在子进程中执行)

    process = Runtime.getRuntime().exec(command, null, dir);//方法阻塞, 等待命令执行完成(成功会返回0)

    process.waitFor();//获取命令执行结果, 有两个结果: 正常的输出 和 错误的输出(PS: 子进程的输出就是主进程的输入)

    bufrIn = new BufferedReader(new InputStreamReader(process.getInputStream(), "UTF-8"));

    bufrError= new BufferedReader(new InputStreamReader(process.getErrorStream(), "UTF-8"));//读取输出

    String line;while ((line = bufrIn.readLine()) != null) {

    result.append(line).append('\n');

    }while ((line = bufrError.readLine()) != null) {

    result.append(line).append('\n');

    }

    }catch(Exception e) {

    e.printStackTrace();

    }finally{

    closeStream(bufrIn);

    closeStream(bufrError);//销毁子进程

    if (process != null) {

    process.destroy();

    }//返回执行结果

    returnresult.toString();

    }

    }/*** 关闭流

    *

    *@paramstream*/

    private static voidcloseStream(Closeable stream) {if (stream != null) {try{

    stream.close();

    }catch(Exception e) {

    e.printStackTrace();

    }

    }

    }

    }

    展开全文
  • import java.io.BufferedReader;import java.io.InputStreamReader;public class CmdDemo {public static void main(String[] args) {BufferedReader br = null;try {Process p = Runtime.getR...

    package com.wzw.util;

    import java.io.BufferedReader;

    import java.io.InputStreamReader;

    public class CmdDemo {

    public static void main(String[] args) {

    BufferedReader br = null;

    try {

    Process p = Runtime.getRuntime().exec("net user");

    br = new BufferedReader(new InputStreamReader(p.getInputStream()));

    String line = null;

    while ((line = br.readLine()) != null) {

    System.out.println(line);

    }

    } catch (Exception e) {

    e.printStackTrace();

    } finally {

    if (br != null) {

    try {

    br.close();

    } catch (Exception e) {

    e.printStackTrace();

    }

    }

    }

    }

    }

    执行结果:

    \\PC-20140327DFCW 的用户帐户

    -------------------------------------------------------------------------------

    Administrator Guest

    命令成功完成。

    展开全文
  • public static List<... execWithResult(String cmd){ List<String> resultList = new ArrayList<String>(); if(StringUtils.isEmpty(cmd)) { return resultList; } Process process = ...
    public static List<String> execWithResult(String cmd) {
            List<String> resultList = new ArrayList<String>();
            
            if(StringUtils.isEmpty(cmd)) {
                return resultList;
            }
            
            Process process = null;
            BufferedReader bufrIn = null;
            
            try {
                process = Runtime.getRuntime().exec(cmd);
                process.waitFor();
                bufrIn = new BufferedReader(new InputStreamReader(process.getInputStream(), "UTF-8"));
                 String line;
                   while ((line = bufrIn.readLine()) != null) {
                       resultList.add(line);
                   }
            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } finally {
                if(bufrIn != null) {
                    try {
                        bufrIn.close();
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            }
            
            return resultList;
        }

     

    展开全文
  • java执行cmd命令并获取返回结果字符串测试代码public static void main(String[] args) { String back=execCMD("ipconfig"); System.out.println(back); }执行cmd名称,返回响应字符串//执行cmd
  • 1.java执行cmd命令并获取输出结果 1 import java.io.BufferedReader; 2 import java.io.InputStreamReader; 3 4 import org.apache.commons.lang3.text.StrBuilder; 5 6 /** 7 * 8 * @author ...
  • 该楼层疑似违规已被系统折叠隐藏此楼查看此楼一开始都是好好的,执行java,javac之类的命令都有正确输出结果,然后我想学习bat脚本,把系统变量JAVA_HOME删除,然后执行了以下vat脚本::@的作用是不输出echo xxx这句...
  • 近期接到一个需求,要求执行一个外部程序命令,用一般的命令行的方法发现没有输出。Runtime的方法似乎只适用于Windows自带的命令,并不适用于外部程序的命令。后来在stack overflow的聊天室里发问后研究出了一个结果...
  • 上边的代码是为了实现动态编译和执行输入的java源码,原理是先把.java和bat文件输出到工作目录下的一个文件夹,调用cmd编译.java文件,再执行.class。现在出现一个问题,就是获取控制台输出的时候总是阻塞,google这...
  • 最近在做一个案例需要用java调用cmd执行python文件,但在获取返回结果的时候,中文出现了乱码。 代码及输出结果如下: public static String predictPython(String path, String param) throws IOException, ...
  • java代码执行cmd命令不用多说,但是获取返回的结果过程有点坑爹,网上很多方法很多都会抛出NullPointException异常,经过几次调试修改,BUG总算解决。为避免再次采坑,纪录此次总结。 public void execCMD(String ...
  • Java 执行cmd程序,并获取命令行内容

    万次阅读 2018-02-27 15:53:23
    java中的RunTime类,每个java程序都有一个RunTme的运行实例,...Process 的 getInputStream() 会获取窗体命令执行结果,可以把它转化成字符串进行输出。下面是具体的实现代码: import java.io.BufferedReader...
  • Process process = runtime.exec("/bin/sh"); Thread.sleep(1000);//防止cmd.exe程序未启动,当然也可以直接使用javac命令 ...为什么我这个javac 和 java命令成功执行,获取终端执行结果获取不到
  • 本文实例讲述了Java简单实现调用命令行并获取执行结果。分享给大家供大家参考,具体如下:import java.io.BufferedReader;import java.io.InputStreamReader;public class Command {public static void exeCmd...
  • java 执行shell命令,并获取执行结果

    万次阅读 2017-12-13 14:47:56
    import com.google.common.base.Strings; import org.apache.log4j.Logger; import java.io.*; import ...java.util.ArrayList;...java.util.List;...* 执行系统命令, 返回执行结果 * @param cmd
  • Java调用命令行并获取执行结果

    千次阅读 2018-06-07 10:21:49
    https://blog.csdn.net/prstaxy/article/details/30050175import java.io.BufferedReader; import java.io.InputStreamReader; public class Command { public static void exeCmd(String commandStr) ...
  • 1.工具类 public class ExcuteLinux { ... public static String exeCmd(String commandStr) { String result = null; try { String[] cmd = new String[]{"/bin/sh", "-c",commandStr...
  • import java.io.BufferedReader; import java.io.InputStreamReader; public class Command { public static void exeCmd(String commandStr) { BufferedReader br = null; try { Process p = Runti...
  • // 获取命令执行结果, 有两个结果: 正常的输出 和 错误的输出(PS: 子进程的输出就是主进程的输入) bufrIn = new BufferedReader(new InputStreamReader(process.getInputStream(), "UTF-8")); bufrError =...
  • java获取url视频时长

    2020-05-10 20:30:06
    解决办法: ...1、通过java执行cmd命令ffmpeg.exe -i '视频url地址'。 2、获取结果,解析其中的Duration行,包含时长信息 代码如下: //ffmpeg命令位置 String ffmpeg_path="D:/ffmpeg-20200
  • 本文代码来自:枫轩缘 的博客: Java调用命令行并获取执行结果我稍微做了更改:package system.call.cmd; import java.io.BufferedReader; import java.io.InputStreamReader; public class Command { public...
  • Java执行Centos/Windows命令,异步执行,同步等待执行结果,输出命令执行日志等方法。 获取操作系统相关参数等信息 protected static final String LINUX_SHELL_PATH = "/bin/bash"; protected static final ...
  • java调用cmd执行bat文件有时会出现卡死的现象,当时感觉很迷惑,后来查资料,本来一般都是这样来调用程序并获取进程的输出流的,但是我在windows上执行这样的调用的时候却总是在while那里被堵塞了,结果造成ffmpeg...
  • 用Runtime.getRuntime().exec(cmd)执行命令获得了一个Process对象,但这个时候命令没有输出,要执行了其它操作之后才会有一连串的结果输出(命令就像一个服务器程序一样等待操作)。在执行了其它操作之后,再去调用...
  • 获取WebLogic版本号有以下几种方式:1.通过命令方式,具体操作方式如下cd $MW_HOME\weblogicxx\server\bin$MW_HOME\weblogicxx\server\bin>...java weblogic.version执行结果输出示例如下:We...
  • 一、安装...jdk安装程序双击安装即可,注意安装目录不可以出现中文安装结果二、设置环境变量安装好之后,我们并不能在cmd中直接使用Java程序,这时需要我们配置环境变量,告诉计算机当我要执行此程序时...

空空如也

空空如也

1 2 3
收藏数 57
精华内容 22
关键字:

java获取cmd执行结果

java 订阅