JSCH窗户机器上执行命令,并采取输出(JSCH execute command on window

2019-10-18 10:56发布

在这里我从我的本地Windows计算机执行远程Windows服务器上命令下面的代码。 但我得到错误的

“无法执行命令或壳远程系统上:无法执行过程”。

任何人可以帮助我在这里走出这个问题的?

 String user = username;
            String pass = password;
            String host = ip;
JSch jsch = new JSch();
            Session session = jsch.getSession(user, host, 22);
 java.util.Properties config = new java.util.Properties();
            config.put("StrictHostKeyChecking", "no");
            session.setConfig(config);

            session.setPassword(pass);
            session.connect();



            Channel channel = session.openChannel("exec");
            channel.connect();
 ((ChannelExec)channel).setCommand("cmd.exe /c \"echo %cd%\"");
 InputStream outputstream_from_the_channel = channel.getInputStream();
            BufferedReader reader = new BufferedReader(new InputStreamReader(outputstream_from_the_channel));
            String jarOutput;
 System.out.println("1");

            while ((jarOutput = reader.readLine()) != null) {

                System.out.println("Inside while loop");
                System.out.println(jarOutput + "\n");

            }

            System.out.println("2");
            reader.close();

Answer 1:

您需要将主机(字符串主机 = IP)窗口使用jsch上安装cygwin。 按照这个网站: https://dbaportal.eu/2015/03/05/installing-openssh-cygwin-1-7-35-on-windows-2012-r2/



文章来源: JSCH execute command on windows machine and take the output
标签: java ssh jsch