java调用shell命令并获取执行结果
2014-09-02 17:56
771 查看
使用到Process和Runtime两个类,返回值通过Process类的getInputStream()方法获取
[plain]
view plaincopy
package ark;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
public class ReadCmdLine {
public static void main(String args[]) {
Process process = null;
List<String> processList = new ArrayList<String>();
try {
process = Runtime.getRuntime().exec("ps -aux");
BufferedReader input = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line = "";
while ((line = input.readLine()) != null) {
processList.add(line);
}
input.close();
} catch (IOException e) {
e.printStackTrace();
}
for (String line : processList) {
System.out.println(line);
}
}
}
调用shell脚本,判断是否正常执行,如果正常结束,Process的waitFor()方法返回0
[java]
view plaincopy
public static void callShell(String shellString) {
try {
Process process = Runtime.getRuntime().exec(shellString);
int exitValue = process.waitFor();
if (0 != exitValue) {
log.error("call shell failed. error code is :" + exitValue);
}
} catch (Throwable e) {
log.error("call shell failed. " + e);
}
}
来源博客:http://blog.csdn.net/arkblue/article/details/7897396
[plain]
view plaincopy
package ark;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
public class ReadCmdLine {
public static void main(String args[]) {
Process process = null;
List<String> processList = new ArrayList<String>();
try {
process = Runtime.getRuntime().exec("ps -aux");
BufferedReader input = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line = "";
while ((line = input.readLine()) != null) {
processList.add(line);
}
input.close();
} catch (IOException e) {
e.printStackTrace();
}
for (String line : processList) {
System.out.println(line);
}
}
}
调用shell脚本,判断是否正常执行,如果正常结束,Process的waitFor()方法返回0
[java]
view plaincopy
public static void callShell(String shellString) {
try {
Process process = Runtime.getRuntime().exec(shellString);
int exitValue = process.waitFor();
if (0 != exitValue) {
log.error("call shell failed. error code is :" + exitValue);
}
} catch (Throwable e) {
log.error("call shell failed. " + e);
}
}
来源博客:http://blog.csdn.net/arkblue/article/details/7897396
相关文章推荐
- java调用shell命令并获取执行结果
- Java开发之调用shell命令并获取执行结果(Mac)
- java调用shell命令并获取执行结果
- java调用shell命令并获取执行结果
- java调用shell命令并获取执行结果
- java调用shell命令并获取执行结果的示例
- java调用shell命令并获取执行结果
- java 中调用window系统中的文件,或者执行命令(shell、.CMD、.EXE)并获取返回值
- 使用Java代码执行系统命令/shell命令, 并获取输出结果
- java 中调用window系统中的文件,或者执行命令(shell、.CMD、.EXE)并获取返回值(如果有的话)
- java 执行shell命令,并获取执行结果
- java执行shell命令或者脚本,返回结果到程序
- linux下的shell命令的编写,以及java怎样调用linux的shell命令(java怎样获取linux上的网卡的ip信息)
- Java 调用系统命令,并打印出执行结果
- Perl 获取shell命令的执行结果
- 重复调用ab命令的shell代码和整理ab结果的java代码
- java代码中执行shell或调用系统命令
- Linux中用C语言执行shell命令并获取返回结果
- Java调用Linux下的shell命令并将结果以流的形式返回
- 服务端用system()执行shell命令获取执行结果(排除signal影响)