当前位置: 首页 > 面试题库 >

使用JSch将文件放入远程目录,如果该目录不存在,则创建它

宣意致
2023-03-14
问题内容

我想使用Jsch库和SFTP协议将文件复制到远程目录。如果远程主机上的目录不存在,则创建它。

在API文档http://epaul.github.com/jsch-
documentation/javadoc/中
,我在put方法中注意到有一种“模式”,但它只是传输模式: -传输模式,
RESUME,APPEND,OVERWRITE之一。

有没有一种简便的方法,而不必编写我自己的代码来检查是否存在然后递归创建目录?


问题答案:

据我所知。我使用以下代码来实现相同的目的:

String[] folders = path.split( "/" );
for ( String folder : folders ) {
    if ( folder.length() > 0 ) {
        try {
            sftp.cd( folder );
        }
        catch ( SftpException e ) {
            sftp.mkdir( folder );
            sftp.cd( folder );
        }
    }
}

其中sftpChannelSftp对象。



 类似资料:
  • 条件是,如果目录存在,则必须在该特定目录中创建文件,而不创建新目录。 下面的代码仅使用新目录创建一个文件,而不针对现有目录。例如,目录名类似于“GETDIRECTION”:

  • 如果目录不存在,下面的方法是正确的创建方法吗? 它应该拥有脚本的完全权限,并且可以被其他人读取。

  • 问题内容: 条件是目录是否存在,它必须在该特定目录中创建文件而无需创建新目录。 下面的代码仅创建具有新目录的文件,而不为现有目录创建文件。例如,目录名称将类似于“ GETDIRECTION” 问题答案: 此代码首先检查目录是否存在,如果不存在则创建该目录,然后创建该文件。请注意,由于我没有完整的代码,因此我无法验证您的某些方法调用,因此,我假设对和这样的事情都可以使用。使用任何类时,您还应该做一些

  • 问题内容: 如果目录不存在,这是创建目录的正确方法吗?它应该对该脚本具有完全的权限,并且可以被其他人读取。 问题答案:

  • 问题内容: 我想使用Python在远程服务器上上传文件。我想事先检查远程路径是否确实存在,如果不存在,请创建它。用伪代码: 我正在考虑在Paramiko中执行命令来创建路径(例如)。我想出了这个: 但是这种解决方案对我来说听起来不太好,因为我先关闭了连接,然后再次重新打开。有更好的方法吗? 问题答案: SFTP支持常用的FTP命令(chdir,mkdir等),因此请使用以下命令: 要完全仿真,您可

  • 问题内容: 我想要创建目标目录(如果不存在)的命令(或cp的选项)。 例: 问题答案: ()没有此类选项。