使用jsch远程连接ubuntu服务器
来源:互联网 发布:日本留学费用 知乎 编辑:程序博客网 时间:2024/06/11 04:13
import com.jcraft.jsch.ChannelExec;import com.jcraft.jsch.JSch;import com.jcraft.jsch.Session;import java.util.Properties;import java.io.BufferedReader;import java.io.InputStream;import java.io.InputStreamReader;import java.nio.charset.Charset;public class CogradientImgFileManager { private static ChannelExec channelExec; private static Session session = null; private static int timeout = 60000; // 测试代码 public static void main(String[] args){ try{ versouSshUtil("10.18.50.100","root","123456",22); runCmd("java -version","UTF-8"); }catch (Exception e){ // TODO Auto-generated catch block e.printStackTrace(); } } /** * 连接远程服务器 * @param host ip地址 * @param userName 登录名 * @param password 密码 * @param port 端口 * @throws Exception */ public static void versouSshUtil(String host,String userName,String password,int port) throws Exception{ System.out.println("尝试连接到....host:" + host + ",username:" + userName + ",password:" + password + ",port:" + port); JSch jsch = new JSch(); // 创建JSch对象 session = jsch.getSession(userName, host, port); // 根据用户名,主机ip,端口获取一个Session对象 session.setPassword(password); // 设置密码 Properties config = new Properties(); config.put("StrictHostKeyChecking", "no"); session.setConfig(config); // 为Session对象设置properties session.setTimeout(timeout); // 设置timeout时间 session.connect(); // 通过Session建立链接 } /** * 在远程服务器上执行命令 * @param cmd 要执行的命令字符串 * @param charset 编码 * @throws Exception */ public static void runCmd(String cmd,String charset) throws Exception{ channelExec = (ChannelExec) session.openChannel("exec"); channelExec.setCommand(cmd); channelExec.setInputStream(null); channelExec.setErrStream(System.err); channelExec.connect(); InputStream in = channelExec.getInputStream(); BufferedReader reader = new BufferedReader(new InputStreamReader(in, Charset.forName(charset))); String buf = null; while ((buf = reader.readLine()) != null){ System.out.println(buf); } reader.close(); channelExec.disconnect(); }}
需要类库jsch-0.1.54.jar 下载地址:http://www.jcraft.com/jsch/
阅读全文
0 0
- 使用jsch远程连接ubuntu服务器
- JAVA远程连接linux服务器读取文件(JSch)
- ubuntu使用ssh连接远程服务器
- Ubuntu下使用ssh连接远程服务器
- Java使用JSch远程连接SSH,模拟sshClient
- 使用JSCH连接Linux服务器-执行linux命令
- Java中通过jsch来连接远程服务器执行linux命令
- windows 下 java程序jsch连接远程linux服务器执行shell命令
- 使用putty或者远程桌面连接远程服务器(Ubuntu)
- JSch连接SSH远程执行命令
- JSch连接SSH远程执行命令
- ubuntu虚拟机服务器远程连接+mysql连接
- Xshell远程连接ubuntu服务器 拒绝连接
- 使用JSch远程创建递归目录
- 使用JSch远程部署flume采集点
- 使用VNC远程连接服务器
- 使用VNC连接远程服务器
- [技术日记]mysql连接远程Ubuntu服务器
- AMOS分析技术:测量模型分析;聊聊验证性因子分析(CFA)与探索性因子分析(EFA)的异同点
- javaScript 错误处理机制
- 虚拟机如何与主机之间直接复制粘贴文件
- KITTI数据集转ros_msg(odometry)
- java web.xml中的配置及其作用
- 使用jsch远程连接ubuntu服务器
- opencv(十三)--边缘检测和梯度
- C++程序编译链接
- 使用Thrift API监控Storm集群和Topology
- 树莓派下播放音乐
- 17、Android开发基础之读取到SD卡的剩余空间
- Spring依赖注入的三种方式
- C++反汇编第四讲,反汇编中识别继承关系,父类,子类,成员对象
- 一段管理实例的代码