java执行Linux命令的方法

本文实例讲述了java执行Linux命令的方法。分享给大家供大家参考。具体实现方法如下:

public class StreamGobbler extends Thread {

InputStream is;

String type;

public StreamGobbler(InputStream is, String type) {

this.is = is;

this.type = type;

}

public void run() {

try {

InputStreamReader isr = new InputStreamReader(is);

BufferedReader br = new BufferedReader(isr);

String line = null;

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

if (type.equals("Error")) {

System.out.println("Error   :" + line);

} else {

System.out.println("Debug:" + line);

}

}

} catch (IOException ioe) {

ioe.printStackTrace();

}

}

}

private void shell(String cmd)

{

String[] cmds = { "/bin/sh", "-c", cmd };

Process process;

try

{

process = Runtime.getRuntime().exec(cmds);

StreamGobbler errorGobbler = new StreamGobbler(process.getErrorStream(), "Error");

StreamGobbler outputGobbler = new StreamGobbler(process.getInputStream(), "Output");

errorGobbler.start();

outputGobbler.start();

try

{

process.waitFor();

}

catch (InterruptedException e)

{

e.printStackTrace();

}

}

catch (IOException e)

{

e.printStackTrace();

}

}

其中参数 cmd 为Linux命令。每次只能执行一条命令。

1.Java Runtime.exec()注意事项:

① 永远要在调用waitFor()方法之前读取数据流

② 永远要先从标准错误流中读取,然后再读取标准输出流

2.最好的执行系统命令的方法就是写个bat文件或是shell脚本。

希望本文所述对大家的Java程序设计有所帮助。相关阅读:

老版本PHP转义Json里的特殊字符的函数

C#实现向多线程传参的三种方式实例分析

IIS和.NET(1.1/2.0)的安装顺序及错误解决方法

jQuery插件之Tocify动态节点目录菜单生成器附源码下载

PHP根据session与cookie用户登录状态操作类的代码

在CentOS的防火墙上开启通行端口的方法

什么是cookie?js手动创建和存储cookie

jQuery中removeAttr()方法用法实例

C# 创建报表过程详解

PHP答题类应用接口实例

iOS开发中使用Picker View实现一个点菜应用的UI示例

快速掌握Node.js模块封装及使用

JavaScript基础知识及常用方法总结

jQuery通用的全局遍历方法$.each()用法实例

php java执行linux_java_java执行Linux命令的方法,本文实例讲述了java执行Linux命 - phpStudy...相关推荐

  1. java httpclient 异步请求_java_java实现HttpClient异步请求资源的方法,本文实例讲述了java实现HttpClien - phpStudy...

    java实现HttpClient异步请求资源的方法 本文实例讲述了java实现HttpClient异步请求资源的方法.分享给大家供大家参考.具体实现方法如下: package demo; import ...

  2. java继承类长方形面积_java_java用接口、多态、继承、类计算三角形和矩形周长及面积的方法,本文实例讲述了java用接口、多 - phpStudy...

    java用接口.多态.继承.类计算三角形和矩形周长及面积的方法 本文实例讲述了java用接口.多态.继承.类计算三角形和矩形周长及面积的方法.分享给大家供大家参考.具体如下: 定义接口规范: /** ...

  3. php监测tomcat,java_JAVA实现监测tomcat是否宕机及控制重启的方法,本文实例讲述了JAVA实现监测tom - phpStudy...

    JAVA实现监测tomcat是否宕机及控制重启的方法 本文实例讲述了JAVA实现监测tomcat是否宕机及控制重启的方法.分享给大家供大家参考.具体如下: Detector.java: import ...

  4. java sqlite 多线程并发_C#_C#解决SQlite并发异常问题的方法(使用读写锁),本文实例讲述了C#解决SQlite并 - phpStudy...

    C#解决SQlite并发异常问题的方法(使用读写锁) 本文实例讲述了C#解决SQlite并发异常问题的方法.分享给大家供大家参考,具体如下: 使用C#访问sqlite时,常会遇到多线程并发导致SQLI ...

  5. java画满天星_java_java实现的满天星效果实例,本文实例讲述了java实现满天星 - phpStudy...

    import java.awt.*; public class Main { public static void main(String[] args) { Frame frame = new Fr ...

  6. java窗体实现射击_java_Java基于Swing实现的打猎射击游戏代码,本文实例讲述了Java基于Swing实 - phpStudy...

    package Game; import static java.lang.Math.random; import java.awt.*; import java.awt.event.*; impor ...

  7. java代码执行linux命令_java执行Linux命令的方法

    本文实例讲述了java执行Linux命令的方法.分享给大家供大家参考.具体实现方法如下: public class StreamGobbler extends Thread { InputStream ...

  8. java执行windows下cmd命令的方法

    本文实例讲述了java执行windows下cmd命令的方法.分享给大家供大家参考. 具体实现代码如下: 复制代码 代码如下: //获取运行时 Runtime rt = Runtime.getRunti ...

  9. 在JSP中,点击网页某个按钮或者超链接执行某些需要确认的命令时,弹出确认框如下效果: 如果点击确定,则执行要操作的命令。如果点击取消则不执行。 实现步骤: 1:在jsp,或者html

    如下效果: 如果点击确定,则执行要操作的命令.如果点击取消则不执行. 实现步骤: 第1步 在jsp,或者html页面的的<head></head>标签之间添加如下js代码: & ...

最新文章

  1. 剑指offer:面试题41. 数据流中的中位数
  2. Java学习总结:33(System类)
  3. 希尔排序python实现
  4. 设计模式之_Iterator_05
  5. 如此简单 | ElasticSearch 最全详细使用教程
  6. leetcode 290. 单词规律(Java版)
  7. C# 与 VC Dll 传输信息
  8. 戴尔押宝iSCSI,由低到高组合成型
  9. php 支付宝付款接口测试
  10. 多项新政催生本年度购房最佳“窗口期”
  11. [Unity脚本运行时更新]C#7新特性
  12. oracle odi 资料档案库访问期间出现未分类的异常错误,oracle学习_基本语法
  13. 52 - 算法- leetcode 14 最长公共前缀
  14. WordPress 下载量最高的十个插件
  15. Maven静态资源导出失败问题
  16. Matlab学习第一部分:基础知识
  17. 终极算法【3】——符号学派
  18. 如何搭建tftp服务器
  19. 用FCM函数实现模糊C均值聚类算法
  20. 点击图片实现图片放大

热门文章

  1. rsync一行代码实现远程文件同步之修改默认22端口
  2. 【解决】-bash: ftp: command not found
  3. Easyexcel异常处理:getOutputStream() has already been called for this response
  4. 【算法】旋转数组【LeetCode】
  5. 【理论】数据结构----树的基本概念
  6. 如何在mysql查询结果集中得到记录行号_获取MySQL查询结果集中记录行号的方法...
  7. C/C++ atoi函数 - C语言零基础入门教程
  8. React之初始化state
  9. excel split函数_Excel 字符串拆分
  10. python文本特征选择,机器学习--特征选择(Python实现)