Java 使用JSch执行的命令的行为与SSH终端中的不同(绕过“是”/“否”的确认提示消息)
注意:我登录到设备,而不是计算机,因此我登录到配置模式(而不是非配置模式) 我使用Java中的JSch库,使用SSH协议登录。我是这样登录的:Java 使用JSch执行的命令的行为与SSH终端中的不同(绕过“是”/“否”的确认提示消息),java,shell,ssh,jsch,Java,Shell,Ssh,Jsch,注意:我登录到设备,而不是计算机,因此我登录到配置模式(而不是非配置模式) 我使用Java中的JSch库,使用SSH协议登录。我是这样登录的: channel = con.openChannel("shell"); channel.connect(); 在某些情况下,当我通过shell发送一个需要su(配置模式)权限(更改配置)的命令时,此代码会绕过的提示确认消息-这可能会阻止其他用户更改配置。如果使用SSH客户端/终端手动输入命令,则必须输入yes进行确认 有人知道为什么吗? 谢谢 [] 当
channel = con.openChannel("shell");
channel.connect();
在某些情况下,当我通过shell发送一个需要su
(配置模式)权限(更改配置)的命令时,此代码会绕过的提示确认消息-这可能会阻止其他用户更改配置。如果使用SSH客户端/终端手动输入命令,则必须输入yes进行确认
有人知道为什么吗?谢谢 []
当我通过JSch登录时,我甚至可以执行配置命令,当我没有在要执行的命令数组中插入“是”时。默认情况下,JSch不请求PTY(伪终端) 这可能导致某些命令的行为与交互式SSH终端中的不同 您可以使用
如果上述问题没有帮助,请参见类似问题: