如何在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);