java如何运行OS命令(转)

  • javac TestRunTime.java
  • java TestRunTime hostname // 执行“hostname”Linux命令
  • 即可看到输出
public class TestRunTime {
 
    public static void main(String[] args) throws IOException, InterruptedException {
        String cmd = "";
        
        if(args == null || args.length == 0){
            System.out.println("请输入命令行参数");
        }else{
            
            for(int i=0;i<args.length; i++){
                cmd += args[i] + " ";
            }
        }
        
 
        try {
            Process process = Runtime.getRuntime().exec(cmd);
 
            InputStreamReader ir = new InputStreamReader(process.getInputStream());
            LineNumberReader input = new LineNumberReader(ir);
 
            String line;
            while ((line = input.readLine()) != null) {
                System.out.println(line);
            }
        } catch (java.io.IOException e) {
            System.err.println("IOException " + e.getMessage());
        }
    }
}

http://www.cnblogs.com/alipayhutu/archive/2012/06/12/2546214.html
时间: 2024-11-05 15:44:41

java如何运行OS命令(转)的相关文章

使用 MaxCompute(原ODPS) java sdk 运行安全相关命令

转自zhenhong 使用 MaxCompute console 的同学,可能都使用过 odps 安全相关的命令.官方文档上有详细的 odps 安全指南,并给出了安全相关命令列表. 简而言之,权限管理.项目空间安全配置以及用户及授权管理都属于 odps 安全命令相关的范畴. 再直白一点,以下列关键字开头的命令,都是 odps 安全相关操作命令: GRANT/REVOKE ... SHOW GRANTS/ACL/PACKAGE/LABEL/ROLE/PRINCIPALS SHOW PRIV/PRI

java运行shell命令,chmod 777 xxx,改变权限无效的解决的方法。

在java程序中运行shell命令,改变文件的权限.能够在命令行中运行 chmod 777 <span style="font-family: Arial, Helvetica, sans-serif;">/data/misc/123.sh"</span> 来改变权限,可是在java代码中运行这个命令时使用 Runtime.getRuntime().exec("chmod 777 /data/misc/123.sh"): 无效,使用

Java初学者:java是如何在命令行下编译运行程序的

我们上文书说到,我们首先安装Java,然后设置Java环境,然后编译运行了一个简单的Java程序,在命令行模式下显示了一个“Hello baby”.那么,为什么呢?发生了什么呢? 首先,下载安装Java就不用问为什么了对吧?所谓巧妇难为无米之炊,没有Java却想用,这不可能的. 其次,为什么我们要那样设置Java的运行环境呢? 因为,目前为止,我只是想在命令行下编译运行java程序,这样一来,你就需要让命令行模式识别java的命令.而命令行下能自动识别的命令,必须我们手动的把命令的路径添加进去.

Java程序执行Linux命令(JSP运行其他程序)

java程序中要执行linux命令主要依赖2个类:Process和Runtime 首先看一下Process类: ProcessBuilder.start() 和 Runtime.exec 方法创建一个本机进程,并返回 Process 子类的一个实例,该实例可用来控制进程并获得相关信息.Process 类提供了执行从进程输入.执行输出到进程.等待进程完成. 检查进程的退出状态以及销毁(杀掉)进程的方法. 创建进程的方法可能无法针对某些本机平台上的特定进程很好地工作,比如,本机窗口进程,守护进程,M

java环境变量配置问题,控制台命令‘java&#39;可以运行,‘javac&#39;不是内部或外部命令。

新系统每次装jdk都发现这个问题,很难受. jdk默认步骤安装,一切OK,环境变量找个网站copycopy,这就是问题所在,网路上大部分环境变量配置都是系统变量JAVA_HOME:Jdk路径,这个ok, 环境变量PATH:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;这个就有问题了,后面的jre\bin中没有javac.exe,把前面的bin覆盖了,导致无法执行Javac, 接着是CLASSPATH:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME

java运行bat命令得到某个windows文件的创建时间

原文:java运行bat命令得到某个windows文件的创建时间 代码下载地址:http://www.zuidaima.com/share/1550463260150784.htm package com.zuidaima.util; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; /** *

从命令行及java程序运行MyBatis Generator 1.3.x生成MyBatis3.x代码

近期因为项目需要,调研了myBatis 3.x的使用,当然,顺便也就研究了一下使用Generator来通过逆向工程生成pojo,mapper等文件.使用这个工具之前,要先下载相关的jar包,我使用的是最新的mybatis-generator-core-1.3.2.jar.下面将generatorConfig.xml列出来: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE generatorConf

cmd中可以运行java,但不能运行javac命令

在cmd中可以运行java,但运行javac命令时提示:'javac' 不是内部或外部命令,也不是可运行的程序或批处理文件. 原因:安装java时把jdk的路径和jre的路径选择成一样,就造成覆盖了.这时候你在lib下也找不到tools.jar和dt.jar. 解决: 1)卸载java,直接用windows自带的卸载这两个有关java的程序: 2)重新安装java,安装时有两次选择路径的机会,第一次是让你选择jdk安装路径,选择为C:\Program Files\Java\jdk1.8.0_14

浅析java线程和OS线程的关系

探究java线程和OS线程之间的联系 一.准备工作 1.查看linux创建线程的方法    man pthread_create 根据man的配置可知,pthread_create会创建一个线程,这个函数是Linux的函数,可以通过C或者C++调用,该函数在pthread.h中 2.查看openjdk版本, rpm -qa | grep jdk 3.卸载原始openJDK版本 rpm -e --nodeps  xxxxx 4.准备oracle jdk7/jdk8,官网可自行下载对应的linux安