Thanks for reply, but why the message i need comes from err stream? On May 4, 2010, at 11:40 AM, Keith Alan Richardson wrote:
> You print only the stdout or stderr, depending on the exit code > > Try printing both. > > >> On May 4, 2010 6:27 AM, "Haidong Zhu" <[email protected]> wrote: >> >> Below is my code,if i set the command as "ls ~/" I can get the output of >> command ls by reading the input stream from channel. >> >> if i set the command as "java -version", i can not get any output and the >> exitcode is 0. >> >> command = "ls ~/"; >> //command = "java -version"; >> InputStream in = null; >> InputStream err = null; >> BufferedReader inReader = null; >> BufferedReader errReader = null; >> try { >> JSch jsch = new JSch(); >> Session session = jsch.getSession(user, host, port); >> session.setUserInfo(userInfo); >> session.setTimeout(timeout); >> session.connect(); >> Channel channel = session.openChannel("exec"); >> ((ChannelExec)channel).setCommand(command); >> channel.setInputStream(null); >> ((ChannelExec)channel).setErrStream(null); >> >> in = channel.getInputStream(); >> err = ((ChannelExec)channel).getErrStream(); >> >> channel.connect(); >> >> int exitCode = 0; >> while(true) { >> if(channel.isClosed()){ >> exitCode = channel.getExitStatus(); >> break; >> } >> try { >> Thread.sleep(1000); >> } catch (InterruptedException ie) { >> } >> } >> >> inReader = new BufferedReader(new InputStreamReader(in)); >> errReader = new BufferedReader(new InputStreamReader(err)); >> >> if (exitCode != 0) { >> while ((s = errReader.readLine()) != null) { >> sb.append(s).append("\n"); >> } >> status.setData(sb.toString()); >> } else { >> while ((s = inReader.readLine()) != null) { >> sb.append(s).append("\n"); >> } >> System.out.println(sb.toString()); >> } >> >> >> ------------------------------------------------------------------------------ >> _______________________________________________ >> JSch-users mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/jsch-users >
------------------------------------------------------------------------------
_______________________________________________ JSch-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/jsch-users
