【问题标题】:PSFTP Recursive DeletePSFTP 递归删除
【发布时间】:2013-03-26 17:48:00
【问题描述】:

我正在尝试设置从本地计算机到远程 NAS 的自动 SFTP 备份。

我有一个调用 PSFTP 的批处理脚本。我正在寻找将本地目录镜像到远程目录。 PSFTP 没有镜像命令,但它可以执行递归 PUT。所以我想我会尝试删除 SFTP 服务器上的目录,然后执行递归 PUT,这将完成同样的事情。但是,PSFTP 不支持递归 DEL,您也不能在非空目录上执行 RMDIR。

那么,在Windows批处理环境下,如何在上传前删除远程目录呢?

【问题讨论】:

    标签: batch-file ftp sftp


    【解决方案1】:

    如果您更喜欢使用脚本而不是 GUI 进行自动备份,可以使用 WinSCP(它同时具有命令行脚本和 GUI)。

    WinSCP 支持recursive upload 和recursive rm。

    另见一般guide for automating SFTP using WinSCP。

    (我是 WinSCP 的作者)

    【讨论】:

    • 抱歉跑题了,但是我在 WinSCP 网站上看到你的名字太多次了,我不能不说 - 欢迎来到! :)
    【解决方案2】:

    我不确定删除所有内容然后重新打开是否真的是个好主意,在较大的目录上这将需要时间和精力。我也不知道psftp,但是如果你能使用windows命令rmdir,你也可以使用xcopy吗?如果是这样,也许 xxcopy 可能是一个更好的解决方案,非常强大且免费供私人使用。

    【讨论】:

    • 无法使用 xcopy,因为传输是通过 SFTP 进行的。
    【解决方案3】:

    我找到了一个基于 GUI 的免费 SFTP 解决方案:

    http://www.duplicati.com/

    花了一点时间才开始,但要让它做 SFTP,你实际上需要告诉它 SSH。此外,它似乎想在远程服务器上创建一个文件夹。因此,让 Duplicati 创建文件夹而不是选择现有文件夹,它将接受该条目。我将它设置为进行完整备份,并且只保留一个备份,从而完成我的目标。

    【讨论】:

      【解决方案4】:

      你可以使用plink在服务器上执行任何命令,包括rm -r

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-02-08
        • 2017-05-12
        • 2014-11-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-20
        相关资源
        最近更新 更多