欢迎来到天天文库
浏览记录
ID:34723890
大小:102.18 KB
页数:5页
时间:2019-03-10
《java调用shell命令》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、Java代码 1.import java.io.BufferedReader; 2.import java.io.File; 3.import java.io.FileOutputStream; 4.import java.io.IOException; 5.import java.io.InputStreamReader; 6.import java.io.OutputStream; 7.import java.io.OutputStreamWriter; 8.import java.text.DateFormat; 9.import java.text.S
2、impleDateFormat; 10.import java.util.Date; 11. 12.public class JavaShellUtil { 13.//基本路径 14.private static final String basePath = "/tmp/"; 15. 16.//记录Shell执行状况的日志文件的位置(绝对路径) 17.private static final String executeShellLogFile = basePath + "executeShell.log"; 18. 19.//发送文件到Kondor系统的
3、Shell的文件名(绝对路径) 20.private static final String sendKondorShellName = basePath + "sendKondorFile.sh"; 21.http://fb-on.com 22.public int executeShell(String shellCommand) throws IOException { 23.int success = 0; 24.StringBuffer stringBuffer = new StringBuffer(); 25.BufferedReader buffered
4、Reader = null; 26.//格式化日期时间,记录日志时使用 27.DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:SS "); 28. 29.try { 30.stringBuffer.append(dateFormat.format(new Date())).append("准备执行Shell命令 ").append(shellCommand).append(" r"); 31. 32.Process pid = null; 33.String[] cmd = {"
5、/bin/sh", "-c", shellCommand}; 34.//执行Shell命令 35.pid = Runtime.getRuntime().exec(cmd); 36.if (pid != null) { 37.stringBuffer.append("进程号:").append(pid.toString()).append("r"); 1.//bufferedReader用于读取Shell的输出内容 bufferedReader = new BufferedReader(new InputStreamReader(pid.getInputStrea
6、m()), 1024); 2.pid.waitFor(); 3.} else { 4.stringBuffer.append("没有pidr"); 5.} 6.stringBuffer.append(dateFormat.format(new Date())).append("Shell命令执行完毕r执行结果为:r"); 7.String line = null; 8.//读取Shell的输出内容,并添加到stringBuffer中 9.while (bufferedReader != null & 10.& 11.(line = buff
7、eredReader.readLine()) != null) { 12.stringBuffer.append(line).append("r"); 13.} 14.} catch (Exception ioe) { 15.stringBuffer.append("执行Shell命令时发生异常:r").append(ioe.getMessage()).append("r"); 16.} finally { 17.if (bufferedReader != nu
此文档下载收益归作者所有