从另外两个名为('.'和'..')的额外文件来自jSch SFTP中从Vector获取文件名

Ank*_*mba 3 java ssh sftp jsch

我使用jSch创建了一个简单的程序来打印远程目录中的总文件名.在目录中,只有7个文件,但在我的控制台上,我得到两个额外的文件名....

从哪里来的这些文件,或它的垃圾???

我的Java代码:

import com.jcraft.jsch.ChannelSftp;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.Session;
import java.util.Vector;

public class DownloadFileSFTP {

public static void main(String[] s){
    String user = "user";
    String password = "1234";
    String host = "remoteIP";
    int port = 22;
    String sourcePath = "/home/remoteSFTP_Files/";
    String destinationPath = "/home/user/SFTP_files/";
    Session session = null;
    ChannelSftp sftp = null;

    try {
        JSch jsch = new JSch();
        session = jsch.getSession(user, host, port);
        session.setPassword(password);
        session.setConfig("StrictHostKeyChecking", "no");
        session.connect();
        System.out.println("Session created");
        sftp = (ChannelSftp) session.openChannel("sftp");
        sftp.connect();
        System.out.println("SFTP Channel connected");
        Vector totalFiles = sftp.ls(sourcePath);
        for(int i = 0; i < totalFiles.size(); i++){
            ChannelSftp.LsEntry ls = (ChannelSftp.LsEntry) totalFiles.get(i);
            System.out.println("File Name: " + ls.getFilename());
        }
    } catch (Exception e){
        e.printStackTrace();
    } finally {
        sftp.exit();
        sftp.disconnect();
        session.disconnect();
    }
}
}
Run Code Online (Sandbox Code Playgroud)

我的控制台中的O/P:

Session created
SFTP Channel connected
File Name: campMonitorHome.jsp
File Name: asm-3.1.jar
File Name: didLatest_dump.sql
File Name: PieChartJson.java
File Name: demoFile.txt
File Name: .
File Name: jquery.jqplot.min.css
File Name: showgraphicalMonitor.jsp
File Name: ..
Run Code Online (Sandbox Code Playgroud)

Kay*_*man 9

它只是显示"." 当前目录和".."父目录.

我想没有使用终端的人永远不会碰到他们:)