sftp - 我如何在 SFTP 中使用 rmdir 来删除不为空的远程文件夹?

标签 sftp sharpssh rmdir

最近,我正在使用 SharpSSH 来处理远程文件。 SharpSSH 提供了用于删除远程目录的 rmdir API,但我发现当目录不为空时它会抛出异常并显示消息“Permission denied”。然后我必须递归地删除最终 rmdir 之前的每个文件,这效率不高。

那么,如果不进行愚蠢的递归删除,我该如何使用这个 rmdir 呢?

最佳答案

没有。在 SFTP 协议(protocol)中,通常没有递归删除文件夹的 API。

因此,即使您使用另一个允许通过一次调用删除文件夹的库(例如 my WinSCP Session.RemoveFiles),它仍然必须在内部递归到子目录。

关于sftp - 我如何在 SFTP 中使用 rmdir 来删除不为空的远程文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40503675/

相关文章:

linux - 如何检查 rmdir 是否返回 EEXIST 或 ENOTEMPTY?

linux - 如何删除 "cargo new"创建的项目目录

c++ - Sublime3 构建系统在远程 linux 机器上编译 C++

c# - 如何使用 SharpSSH 或 SSH.NET 库在 SFTP 服务器上附加文本文件

c# - SharpSSH 卡在 C# SSH 应用程序中的无限流读取中

ruby 1.9 3 with passenger 3.0.12 - Tempfile 在尝试 rmdir 时导致 'No such file or directory' *.lock

perl - 为什么 Net::SSH2::File 只允许写入 32500 字节?

python - python 中的 SFTP 方法获取文件的基本名称和完整路径

c# - 使用不同的扩展名将文件上传到SFTP服务器

c# - 如何使用 SharpSSH 以编程方式从 SFTP 服务器删除文件?