无法使用Java中的jsch将文件列表提取到远程服务器的目录

我正在尝试使用jsch库将文件填充到远程服务器。目录结构类似于'/ home / myname / batch_run_dt = 20180706 / batchid = P20180706001 / *'


因此,基本目录batch_run_dt包含多个子目录(batchid = P20180706 *),此外还有子目录。该结构将以类似的方式在远程服务器中维护。我正在使用下面的代码来实现此功能。


    public class Runner{

    public static void main(String[] args) throws FileNotFoundException, IOException, SQLException, JSchException {

    Date todaydate = new Date();

    Calendar cal = Calendar.getInstance();

    cal.setTime(todaydate);

    cal.add(Calendar.DAY_OF_MONTH,-1);



 SimpleDateFormat ft = new SimpleDateFormat("yyyyMMdd");


 String date = ft.format(cal.getTime());

    logger.info("date :: " + date);

    // starting the process


        String partition = "batch_run_dt=" + date;

        getData(partition);

}    

 public static void getData(String partition)       throws JSchException {

    logger.info("Starting download data ");

    // get the destination location

    String destLoc = "/home/myname/" + partition;


    // get source location from data needs to import through sftp

    String srcLoc = "/home/myname/" + partition;


    download(partition, prop, destLoc, srcLoc);

    logger.info("Finished download prov data ");

}


public static void download(String partition, Properties prop, String destLoc, String srcLoc) throws JSchException {


    // creaating a sesssion for jsch

    Session session = NonProdRunner.createjschsession("username",

            "password", "host");

    // creating a channel from session

    Channel channel = session.openChannel("sftp");

    channel.connect();

    // creating sftp channel to connect

    

但是在第一个子文件夹加载后,在sftp中出现异常时出现错误:No such file。不确定我在这里缺少什么,请帮助解决此问题。


达令说
浏览 221回答 1
1回答

墨色风雨

因为使用了,ls *您将获得文件和文件夹,然后将它们用于cd filename。可能性:这是一个文件用户没有正确的权利检查文档以确认问题:ChannelSftp.cdSftpException-如果命名路径未指示目录,用户无法访问该目录或发生其他问题。另一个可能的问题是,如果您尝试移动到类似以下的文件夹中:cd /root/folder*该结构提出了多个结果:/root/folderA /root/folderB由于该命令可以赋予result:folderA和folderB,因此您将获得一个异常:Exception in sftp:/root/folder* is not unique:
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java