sftp JSch传输文件到远程cygwin

问题描述:

我试图从本地Windows机器使用sftp JSch将文件复制到远程Windows机器。远程机器有cygwin,但文件没有传送。在做的时候,它不会抛出任何错误。sftp JSch传输文件到远程cygwin

我尝试了不同的目标路径格式,如/cygdrive/d/d://

String destination = "/cygdrive/d/Test1"; 
String source = "D:\\Test"; 

List<String> files = NFileUtils.listFiles(source); 
for (String f : files) { 
    String fileName = NFileUtils.getFilename(f); 
    try { 
     sftp.put(f, destination + "\\" + fileName); 
    } catch (Exception e) { 
     System.out.println(e); 
    } 
} 
+0

哪个服务器sftp用于cygwin端? – matzeri

+0

其在Windows机器上 – gigi

+0

我的意思是用作sftp服务器的软件。你有没有用sftp客户端测试过它? – matzeri

sftp.put(f, destination + "\\" + fileName); 

SFTP使用文件命名模型,其中“/”是目录分隔符。尝试使用“/”作为路径分隔符,而不是“\”:

sftp.put(f, destination + "/" + fileName); 

如果fileName包含任何“\”字符,你需要改变它们。

+0

我试过这个..即使它没有帮助。没有错误,Nothing.But文件没有得到转移。 – gigi

+0

它帮助了我。谢谢! – gigi