java 账号密码方式 远程操作linux 上传和下载文件

时间:2024-06-03 07:00:22

scp和sftp运用例子,ganymed-ssh2-build210.jar包远程连接操作linux服务器

1、建立连接

Connection con = new Connection(IP, PORT);

//连接

con.connect();

//远程服务器的用户名密码

boolean isAuthed = con.authenticateWithPassword(remoteUser,remotePass);

//建立SCP客户端

SCPClient scpClient = con.createSCPClient();

//服务器端的文件下载到本地的目录下

scpClient.get("/home/oracle/RUNNING.txt", "C:/");

//将本地文件上传到服务器端的目录下

scp.put("C:/RUNNING.txt", "/home/oracle");

 

建立一个SFTP客户端        

SFTPv3Client sftpClient = new SFTPv3Client(con);

//远程新建目录

sftpClient.mkdir("newRemoteDir", 6);

//远程删除目录

sftpClient.rmdir(RemoteDir);

//远程新建文件          

sftpClient.createFile("newRemoteFile");

//远程打开文件,可进行读写

sftpClient.openFileRW("remoteFile");

//建立会话

Session session = null;

session = con.openSession();

//利用会话可以操作远程服务器

//例如:删除远程目录下的文件

session.execCommand("rm -f".concat(remotePath).concat(qrCodeFileMode));

//显示执行命令后的信息

InputStream stdout = new StreamGobbler(session.getStdout());

BufferedReader br = new BufferedReader(new InputStreamReader(stdout));

 

while (true) {

String line = br.readLine();

    if (line == null) {

       log.info("远程服务器返回信息:空");

           break;

    }

    log.info("远程服务器返回信息:" + line);

}

//获得推出状态

System.out.println("ExitCode: " + session.getExitStatus());

session.close();

con.close();

 

java 账号密码方式 远程操作linux 上传和下载文件