java中怎么执行liunx命令? java.lang.Runtime.getRuntime().exec(String s); 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 telnet登录命令也放在String s里吗 返回值是什么类型的?能给个相关的列子吗? 在Unix下运行ls命令的情形:import java.io.BufferedInputStream;import java.io.IOException;public class ExecLs { static public void main(String[] args) { String cmd = "ls" try { Process ps = Runtime.getRuntime().exec(cmds); System.out.print(loadStream(ps.getInputStream())); System.err.print(loadStream(ps.getErrorStream())); } catch(IOException ioe) { ioe.printStackTrace(); } } // read an input-stream into a String static String loadStream(InputStream in) throws IOException { int ptr = 0; in = new BufferedInputStream(in); StringBuffer buffer = new StringBuffer(); while( (ptr = in.read()) != -1 ) { buffer.append((char)ptr); } return buffer.toString(); }} import java.lang.Runtime;import java.lang.String;import java.lang.*;import java.io.*; public class C { Process t=null; public void run(){ try { t=java.lang.Runtime.getRuntime().exec("cmd.exe /c start telnet 192.168.0.122");telnet之后是输入口令 我在程序里怎么写才能直接登陆上啊? 谢谢 我执行了pstree后 想取线程数,然后判断大小写数据库![work@tracqhost jtom]$ javac C.java[work@tracqhost jtom]$ java Cinit-+-atd |-bdflush |-bonobo-activati |-cannaserver |-crond |-eth0 |-eth1 |-gconfd-2 |-gnect |-gnome-panel |-gnome-settings- |-gpm |-httpd---20*[httpd] |-in.proftpd---in.proftpd |-irqbalance |-java---java---41*[java] ////// 我想把41取出来做判断操作,请问该怎么做啊?? |-2*[jre] 或者取出整行也可以! |-keventd |-khubd |-5*[kjournald] |-klogd |-kscand/DMA |-kscand/HighMem |-kscand/Normal |-ksoftirqd_CPU0 |-ksoftirqd_CPU1 |-kswapd |-kupdated |-login---bash---startx---xinit-+-X | `-gnome-session---ssh-agent |-2*[login---bash] |-mdrecoveryd |-metacity |-3*[mingetty] |-nautilus---nautilus---5*[nautilus] |-notification-ar |-oafd |-11*[oracle] |-portmap |-rpc.statd |-safe_mysqld---mysqld---mysqld---9*[mysqld] |-2*[sendmail] |-sshd---sshd---sshd---bash |-syslogd |-tnslsnr |-xfs |-xinetd-+-fam | |-in.telnetd---login---bash | `-in.telnetd---login---bash---java---java-+-7*[java] | `-java---pstree `-xscreensaver---barcode我想把41取出来做判断操作,请问该怎么做啊??或者取出整行也可以! 我试过没问题。public class a { public static void main(String[] args) throws Exception { Runtime rt = Runtime.getRuntime(); for(int i=0 ;i<100;i++) { String cmd = "linux command"; rt.exec(cmd); } }} 不是意思,不用就行循环的。public class a { public static void main(String[] args) throws Exception { Runtime rt = Runtime.getRuntime(); String cmd = "net send 192.168.0.45 hi"; rt.exec(cmd); }} 我在String cmds="pstree | grep java |awk -F "---" ' {printf $3"\n"}' |awk -F "*" ' {printf $1"\n"}'";Runtime.getRuntime.exex(cmds);出错如下 C.java:16: illegal character: \92 String cmds="pstree | grep java |awk -F "---" ' {printf $3"\n"}' |awk -F "*" ' {printf $1"\n"}'"; ^C.java:16: illegal character: \92 String cmds="pstree | grep java |awk -F "---" ' {printf $3"\n"}' |awk -F "*" ' {printf $1"\n"}'"; ^C.java:16: unexpected typerequired: variablefound : value String cmds="pstree | grep java |awk -F "---" ' {printf $3"\n"}' |awk -F "*" ' {printf $1"\n"}'"; ^C.java:16: operator - cannot be applied to byte,java.lang.String String cmds="pstree | grep java |awk -F "---" ' {printf $3"\n"}' |awk -F "*" ' {printf $1"\n"}'"; ^4 errors应该是Stringl类型里有非法字符 ,该怎么才能解决呢! 能在exec()里运行那个命令吗?该怎么写?? HQL HttpClient HTTPS 连接池问题 MyEclipse6与glassfish v2 集成的问题 jsp中从数据库读取的数据怎么用表格来呈现 struts hibernate spring 哪位高手可以提供一个详细的hibernate3.1的Blob操作的代码 struts中的reset标签无效~ Hibernate3 Query 取得的List 如何直接打印各项的值 如何配置MS SQL Server JDBC连接池 请问bean是什么?谢谢! 大家帮我看看tomcat报的异常是什么意思?急! Struts编译 的时候警告,运行的时候500错误,马上给分
import java.io.IOException;public class ExecLs { static public void main(String[] args) {
String cmd = "ls" try {
Process ps = Runtime.getRuntime().exec(cmds);
System.out.print(loadStream(ps.getInputStream()));
System.err.print(loadStream(ps.getErrorStream()));
} catch(IOException ioe) {
ioe.printStackTrace();
}
} // read an input-stream into a String
static String loadStream(InputStream in) throws IOException {
int ptr = 0;
in = new BufferedInputStream(in);
StringBuffer buffer = new StringBuffer();
while( (ptr = in.read()) != -1 ) {
buffer.append((char)ptr);
}
return buffer.toString(); }}
import java.lang.String;
import java.lang.*;
import java.io.*;
public class C
{
Process t=null;
public void run(){
try {
t=java.lang.Runtime.getRuntime().exec("cmd.exe /c start telnet 192.168.0.122");
telnet之后是输入口令 我在程序里怎么写才能直接登陆上啊?
[work@tracqhost jtom]$ javac C.java
[work@tracqhost jtom]$ java C
init-+-atd
|-bdflush
|-bonobo-activati
|-cannaserver
|-crond
|-eth0
|-eth1
|-gconfd-2
|-gnect
|-gnome-panel
|-gnome-settings-
|-gpm
|-httpd---20*[httpd]
|-in.proftpd---in.proftpd
|-irqbalance
|-java---java---41*[java] ////// 我想把41取出来做判断操作,请问该怎么做啊??
|-2*[jre] 或者取出整行也可以!
|-keventd
|-khubd
|-5*[kjournald]
|-klogd
|-kscand/DMA
|-kscand/HighMem
|-kscand/Normal
|-ksoftirqd_CPU0
|-ksoftirqd_CPU1
|-kswapd
|-kupdated
|-login---bash---startx---xinit-+-X
| `-gnome-session---ssh-agent
|-2*[login---bash]
|-mdrecoveryd
|-metacity
|-3*[mingetty]
|-nautilus---nautilus---5*[nautilus]
|-notification-ar
|-oafd
|-11*[oracle]
|-portmap
|-rpc.statd
|-safe_mysqld---mysqld---mysqld---9*[mysqld]
|-2*[sendmail]
|-sshd---sshd---sshd---bash
|-syslogd
|-tnslsnr
|-xfs
|-xinetd-+-fam
| |-in.telnetd---login---bash
| `-in.telnetd---login---bash---java---java-+-7*[java]
| `-java---pstree
`-xscreensaver---barcode我想把41取出来做判断操作,请问该怎么做啊??或者取出整行也可以!
public class a
{
public static void main(String[] args) throws Exception
{
Runtime rt = Runtime.getRuntime();
for(int i=0 ;i<100;i++)
{
String cmd = "linux command";
rt.exec(cmd);
}
}
}
public class a
{
public static void main(String[] args) throws Exception
{
Runtime rt = Runtime.getRuntime();
String cmd = "net send 192.168.0.45 hi";
rt.exec(cmd);
}
}
Runtime.getRuntime.exex(cmds);出错如下
C.java:16: illegal character: \92
String cmds="pstree | grep java |awk -F "---" ' {printf $3"\n"}' |awk -F
"*" ' {printf $1"\n"}'";
^
C.java:16: illegal character: \92
String cmds="pstree | grep java |awk -F "---" ' {printf $3"\n"}' |awk -F
"*" ' {printf $1"\n"}'"; ^
C.java:16: unexpected type
required: variable
found : value
String cmds="pstree | grep java |awk -F "---" ' {printf $3"\n"}' |awk -F
"*" ' {printf $1"\n"}'";
^
C.java:16: operator - cannot be applied to byte,java.lang.String
String cmds="pstree | grep java |awk -F "---" ' {printf $3"\n"}' |awk -F
"*" ' {printf $1"\n"}'";
^
4 errors
应该是Stringl类型里有非法字符 ,该怎么才能解决呢! 能在exec()里运行那个命令吗?该怎么写??