簡體   English   中英

使用 SFTP 從另一台服務器傳輸文件

[英]File transfer using SFTP from another server

我可以使用以下代碼將本地系統文件上傳到 SFTP 客戶端,

        try {
            final SSHClient ssh = new SSHClient();
            ssh.addHostKeyVerifier(new PromiscuousVerifier());
            ssh.connect("100.XX.XX.XX");
            ssh.authPassword("username", "password");
//        ssh.authPublickey(null, arg);
            final String src = "C:\\LocalFolder\\SFTPData\\file.txt";
            File localFile = new File(src);
            System.out.println(localFile.getName());
            SFTPClient sftp = ssh.newSFTPClient();

            sftp.put(localFile.getAbsolutePath(), "/home/user/test");
        } catch (Exception e) {
        }

但問題是,我需要從需要用戶名、密碼(\\100.xx.24.55\\SFTPData\\file.txt)的windows網絡共享路徑傳輸文件。

我們如何實現這一目標?

嘗試這個:

final String src = "\\\\100.xx.24.55\\SFTPData\\file.txt";

這相當於您使用\\\\100.xx.24.55\\SFTPData\\file.txt打開文件資源管理器

當然,這需要您的 Windows 登錄帳戶具有從共享文件夾讀取文件的足夠權限。

如果您需要提供與 Windows 登錄憑據不同的憑據,您可以嘗試“使用不同的憑據映射網絡驅動器”,然后在代碼中使用選定的驅動器號進行引用,例如。 X:\\\\SFTPData\\\\file.txt

第三個選擇是使用 SMB Java 庫,例如。 SMBJ,連接到共享文件夾並讀取文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM