sftp JSch 传输文件到远程 cygwin

sftp JSch transfer file to remote cygwin

我正在尝试使用 sftp JSch 将文件从本地 windows 机器复制到远程 windows 机器。远程计算机有 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);
    }
}
sftp.put(f, destination + "\" + fileName);

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

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

如果fileName包含任何“\”字符,您也需要更改它们。