zoukankan      html  css  js  c++  java
  • Java实现Linux上传&下载文件

    /**
    *实现服务器连接
    * @param host
    * @param port
    * @param username
    * @param password
    * @param privateKeyFile
    * @return
    * @throws IOException
    */

    public static Connection getSSHConnection(String host,int port,String username,String password,String privateKeyFile) throws IOException {
    Connection connection=new Connection(host,port);
    connection.connect();

    File file=new File(privateKeyFile);
    System.out.println(file);
    boolean b=connection.authenticateWithPublicKey(username,file,password);
    System.out.println(b);
    if (b){
    return connection;
    }else {
    System.out.println("登录连接失败,请检查用户名、密码、私钥文件");
    return null;
    }
    }
    /**
    *实现下载服务器上的文件到本地指定目录
    * @param conn SSH连接信息
    * @param fileName 服务器上的文件地址/opt/rpc/log/order/all.log
    * @param localPath 本地路径:D:
    * @throws IOException
    */

    public void getFile(Connection conn, String fileName,String localPath) throws IOException{

    SCPClient scpClient=conn.createSCPClient();
    //String logPath="cd /opt/rpc/log/order";
    //Session session = conn.openSession();
    //session.execCommand(logPath);//执行shell命令
    scpClient.get(fileName,localPath);

    }

    /**
    *实现上传本地文件到服务器上指定目录
    * @param conn SSH连接信息
    * @param fileName D:a.txt
    * @param localPath 服务器地址路径:/opt/rpc/log/order
    * @throws IOException
    */
    public void putFile(Connection conn, String fileName,String localPath) throws IOException{

    SCPClient scpClient=conn.createSCPClient();
    scpClient.put(fileName,localPath);

    }
  • 相关阅读:
    Redis常用操作命令
    redis-sentinel.conf配置项详解
    Kafka常用命令
    go modules的使用姿势
    GO语言密码加解密(bcrypt)
    ssh-copy-id 秘钥分发报错
    k8s 命令提示
    算法与数据结构(持续更新)
    【spring】 @PostConstruct注解
    Spring Boot 整合Redis
  • 原文地址:https://www.cnblogs.com/banml/p/11378547.html
Copyright © 2011-2022 走看看