这里需要引入Hutool的工具包
<!-- Hutool工具 -->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>4.1.19</version>
</dependency>
<dependency>
<groupId>com.jcraft</groupId>
<artifactId>jsch</artifactId>
<version>0.1.55</version>
</dependency>
1、编写工具类(楼主需要多个连接,单个连接的可以考虑不需要工具类)
/**
* @ClassName : ConnectLinux
* @Description : 连接linux执行ssh命令
* @Author : Jinwei
* @Date: 2020-09-21 14:18
*/
public class ConnectLinux {
public static final String getConnect(String sshHost, String sshUser, String sshPass,String cmd) {
Session session = JschUtil.getSession(sshHost, 22, sshUser, sshPass);
String exec = JschUtil.exec(session, cmd, CharsetUtil.CHARSET_UTF_8);
JschUtil.close(session);
return exec;
}
}
2、获取返回结果
//需要执行的命令,查询日志
String cmd = "cat /data/logs/api/info/log."+dateTime+".*.log | grep " + id;
//连接获取返回结果
String connect = ConnectLinux.getConnect("ip", "账户", "密码", 指令);