Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/8.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
如何在Java的JSch中通过ChannelExec.setCommand()方法传递变量?_Java_Session_Ssh_Jsch - Fatal编程技术网

如何在Java的JSch中通过ChannelExec.setCommand()方法传递变量?

如何在Java的JSch中通过ChannelExec.setCommand()方法传递变量?,java,session,ssh,jsch,Java,Session,Ssh,Jsch,下面是我的代码。请查收 ChannelExec channelExec = (ChannelExec)session.openChannel("exec"); InputStream in = channelExec.getInputStream(); channelExec.setCommand("sh "+ "a.sh; echo \\$No"); a.sh是我在Linux服务器上的shell脚本。我需要将脚本与No的值一起运行(作为Java函数的参数接收) 然而,No的值并没有传递给我的

下面是我的代码。请查收

ChannelExec channelExec = (ChannelExec)session.openChannel("exec");
InputStream in = channelExec.getInputStream();
channelExec.setCommand("sh "+ "a.sh; echo \\$No");
a.sh
是我在Linux服务器上的shell脚本。我需要将脚本与
No
的值一起运行(作为Java函数的参数接收)

然而,No的值并没有传递给我的shell脚本


请提供帮助。

这是一个常规的Java字符串,您要传递给
ChannelExec.setCommand()
的内容。因此,请使用字符串连接(正如您已经做的那样):

channelExec.setCommand("sh "+ "a.sh; echo \\" + No);