我已通过FTP连接到我的远程服务器,并使用以下代码输入了一些zip文件。
channelSftp.cd(SFTPWORKINGDIR + "/" + remoteDestinationDir);
File file = new File(localSourceToFile);
LOG.info("Transferring file: " + localSourceToFile + " to "+ SFTPWORKINGDIR + "/" + remoteDestinationDir);
FileInputStream fis = new FileInputStream(file);
channelSftp.put(fis, file.getName());
fis.close();
LOG.info("Transfer successful");
现在,我想在服务器上解压缩文件
答案 0 :(得分:1)
似乎ChannelSftp不支持在服务器端执行命令。它主要处理文件传输。您可以使用ChannelExec https://epaul.github.io/jsch-documentation/simple.javadoc/com/jcraft/jsch/ChannelExec.html执行unzip /path/to/uploaded/file.zip。
或者,您可以在服务器端运行一个作业,该作业会监视您上传文件的目录,并自动上传任何上传的zip文件。