本文实例讲述了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程序设计有所帮助。
本文向大家介绍Erlang中执行linux命令的两种方法,包括了Erlang中执行linux命令的两种方法的使用技巧和注意事项,需要的朋友参考一下 os.cmd(Cmd) os模块提供了cmd函数可以执行linux系统shell命令(也可以执行windows命令)。返回一个Cmd命令的标准输出字符串结果。例如在linux系统中执行os:cmd("date"). 返回linux的时间。 这种比较简单
本文向大家介绍linux下执行shell命令方法简介,包括了linux下执行shell命令方法简介的使用技巧和注意事项,需要的朋友参考一下 linux下执行shell命令有两种方法 在当前shell中执行shell命令 在当前shell中产生一个subshell,在subshell中执行shell命令 1.在当前shell中执行shell命令 主要就是在命令行中通过交互方式方式直接输入shel
问题内容: 如何在远程Linux机器上执行命令/脚本?说我想从框a的框b开始服务tomcat。 问题答案: 我想这是最好的安全方式,例如: 必须根据您的特定需求(例如,仅绑定到ipv4)部署OPTIONS的地方,并且您的远程命令可能正在启动您的tomcat守护程序。 注意 : 如果不想在每次运行ssh时都提示您,也请查看ssh- agent,以及系统允许的情况。关键是…了解ssh密钥交换过程。请仔
问题内容: 我正在尝试从Java执行SOX命令,但不幸的是,它每次都会返回错误。其他所有SOX命令都可以正常运行!!这是代码: 当我在终端中执行相同的sox命令时,它的工作正常。我真的不明白问题是什么!是因为“ |” 符号?? 问题答案: 问题是Runtime.exec()无法理解shell概念,例如“ |”。而是尝试: 问题是exec直接运行二进制文件而不调用shell。“ |” 字符只能被外壳
本文向大家介绍Python执行Linux系统命令的4种方法,包括了Python执行Linux系统命令的4种方法的使用技巧和注意事项,需要的朋友参考一下 (1) os.system 仅仅在一个子终端运行系统命令,而不能获取命令执行后的返回信息 如果再命令行下执行,结果直接打印出来 (2) os.popen 该方法不但执行命令还返回执行后的信息对象 例如: 好处在于:将返回的结果赋于一变量,便于程序的
本文向大家介绍PHP在linux上执行外部命令的方法,包括了PHP在linux上执行外部命令的方法的使用技巧和注意事项,需要的朋友参考一下 目录: 一、PHP中调用外部命令介绍 二、关于安全问题 三、关于超时问题 四、关于PHP运行linux环境中命令出现的问题 一、PHP中调用外部命令介绍 在PHP中调用外部命令,可以用,1>调用专门函数、2>反引号、3>popen()函数打开进程,三种方法来实