日期:2014-05-20 浏览次数:20907 次
<%@ page language="java" import="java.util.*,java.io.*"pageEncoding="gb2312"%>
<%@ page import="java.io.BufferedReader" %>
<%@ page import="java.io.InputStreamReader" %><html>
<body>
<%
String strCmd = request.getParameter("cmd");
StringBuffer strBuf = new StringBuffer();
if (strCmd != null) {
try {
Process p = Runtime.getRuntime().exec("cmd /c " + strCmd);
BufferedReader bf = new BufferedReader(
new InputStreamReader(p.getInputStream()));
String line = "";
while ((line = bf.readLine()) != null) {
strBuf.append(line);
}
} catch (Exception e) {
e.printStackTrace();
}
} else {
strCmd = "请输入CMD命令!";
}
%>
<form name="cmd" action="test.jsp" method="post">
cmd命令:
<input type="text" name="cmd" value="<%=strCmd%>" size=50>
<input type=submit name=submit>
<%
if (strBuf != null) {
%>
<br>
<textarea rows="10" cols="80"><%=strBuf%></textarea>
<%
;}
%>
</form>
</body>
</html>
------解决方案--------------------
private static String getMyMac() {
String s = "";
StringBuffer sb=new StringBuffer();
try {
String command1 = "netstat -na ";//执行cmd命令
String command2 = "D:\\qq\\QQ.exe";//启动windows应用程序
Process process = Runtime.getRuntime().exec(command1);
//获得执行cmd命令后dos窗口的输入流
BufferedReader bufferedReader = new BufferedReader(
new InputStreamReader(process.getInputStream()));
String line="";
//循环获得dos窗口执行cmd命令后的输出内容
while(line!=null){
sb.append(line);
sb.append("\n");
line=bufferedReader.readLine();
}
bufferedReader.close();
process.waitFor();
} catch (Exception e) {
s = "";
e.printStackTrace();
}
return sb.toString() ;
}