1. 程序功能
该部分实现了纯Java代码跨Linux服务器拷贝文件及远程命令执行的功能。
public static String deploy (String host,String userName,String pwd,Integer port) {
try {
if (StringUtils.isAnyBlank(host, userName, pwd) || port == null) {
return "连接参数不完整,请检查!";
}
if (!this.isPortOpen(host, port, 2000)) {
return "目标服务器连接失败!";
}
//安装部署
this.remoteDeploy(host, port, userName, pwd, 5000l);
return null;
} catch (Exception e) {
logger.error("remote deploy error : ", e);
return e.getMessage();
}
}
/**
* 检查给定的主机和端口是否可达。
*
* @param host 要检查的主机名或IP地址
* @param port 要检查的端口号
* @param timeout 连接超时时间(毫秒)
* @return 如果主机和端口可达则返回true,否则返回false
*/
private boolean isPortOpen(String host, int port, int timeout) {
try (Socket socket = new So