本文主要是介绍windows 下 java程序jsch连接远程linux服务器执行shell命令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
java远程连接服务的shell需要使用SSH的登录方式,可以使用JSch技术。JSch 是SSH2的一个纯Java实现。它允许你连接到一个sshd 服务器,使用端口转发,X11转发,文件传输等等。
jsch官网: http://www.jcraft.com/jsch/
jsch的例子: http://www.jcraft.com/jsch/examples/
远程登录shh有两种方式:一种是账号密码登录的方式,一种是秘钥登录的方式。
这里我使用的账号密码的登录方式。
执行shell命令可以在连接中使用shell通道或exec通道都可以,以下是sehll通道和exec通道的区别。
shell 通道: 在jsch中每条命令都会开一个终端界面,如果执行多条命令需要多个shell通道,相当于是多个终端界面,这些命令之间不会相互通信。
exec 通道:在exec中可以一次执行多个命令, 使用“;”或“\n”分开多个命令,这些命令之间会相互通信。如果开多个exec,虽然可以执行多条命令,但这些exec之间不会相互传递状态,就行开多个
这篇关于windows 下 java程序jsch连接远程linux服务器执行shell命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!