<dependency>
<groupId>jsch</groupId>
<artifactId>jsch</artifactId>
<version>0.1.8</version>
</dependency>
import com.jcraft.jsch.ChannelSftp;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.Session;
import java.io.*;
import java.util.Properties;
public class SftpFile {
public static void main(String[] args) throws Exception {
//声明JSCH对象
JSch jSch = new JSch();
//获取一个Linux会话
Session session = jSch.getSession("root", "10.0.40.98", 22);
//设置登录密码
session.setPassword("密码");
//关闭key的检验
Properties sshConfig = new Properties();
sshConfig.put("StrictHostKeyChecking", "no");
session.setConfig(sshConfig);
//连接Linux
session.connect();
//通过sftp的方式连接
ChannelSftp channel = (ChannelSftp) session.openChannel("sftp");
channel.connect();
//上传文件
File file = new File("d:\\1.txt");
InputStream inputStream = new FileInputStream(file);
channel.put(inputStream, "/root/file/2.txt");
//下载文件
OutputStream out = new FileOutputStream("d:\\4.txt");
channel.get("/root/file/1.txt", out);
//关闭流
inputStream.close();
out.close();
}
}
put(): 文件上传
get(): 文件下载
cd(): 进入指定目录
ls(): 得到指定目录下的文件列表
rename(): 重命名指定文件或目录
rm(): 删除指定文件
mkdir(): 创建目录
rmdir(): 删除目录