Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将参数传递给linux进程的Jsch Java程序_Java_Linux_Jsch - Fatal编程技术网

将参数传递给linux进程的Jsch Java程序

将参数传递给linux进程的Jsch Java程序,java,linux,jsch,Java,Linux,Jsch,我有一个名为“datasimulator”的二进制可执行文件,它运行在远程linux机器上,启动一个交互过程,用户可以在其中提供输入并获得相应的输出,如下所示- [root@host]$ ./datasimulator > set country USA //user passing this command Country set to USA //response from process > set country Canada Country set t

我有一个名为“datasimulator”的二进制可执行文件,它运行在远程linux机器上,启动一个交互过程,用户可以在其中提供输入并获得相应的输出,如下所示-

[root@host]$ ./datasimulator 
> set country USA    //user passing this command 
Country set to USA   //response from process  
> set country Canada  
Country set to Canada  
>exit  
Thank you for using datasimulator.  
[root@host]$
我正在尝试使用JavaJSCH实用程序自动化这个过程,通过java程序,我可以将输入和输出传递回我的程序。虽然我能够通过JSCHSSH连接启动datasimulator,但无法将输入传递给这个模拟器进程。请帮忙。 下面是我正在尝试使用的java程序-


此程序启动数据模拟程序,但无法成功执行下一个连续命令。

请发布您的java代码,否则很难判断您做错了什么我已使用java代码更新了帖子。也许可以帮助您“ps.println(“国家设置为美国”);“这不应该是
ps.println(“设置国家美国”)
JSch jsch = new JSch(); session = jsch.getSession(username, host, 22);
session.setPassword(password);
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();

channel=session.openChannel("shell");
OutputStream ops = channel.getOutputStream();
ps = new PrintStream(ops, true);
channel.connect();
ps.println("cd /path/To/datasimulator/ && ./datasimulator");
ps.println("Country set to USA");
Thread.sleep(5000);
ps.println("Country set to Canada");
Thread.sleep(5000);
ps.close();
channel.disconnect();
session.disconnect();