繁体   English   中英

rsync 命令删除远程系统上的目录

[英]rsync command to delete a directory on a remote system

有一个远程系统,我只在一个目录中拥有读/写权限。 我用它来存储每晚构建的结果。

为了上传特定日期的结果,我使用以下命令在远程目录上执行<date_dir>rsync

rsync -zavR <date_dir> <server_name>:/path/of/the/directory/where/i/have/permission/

现在,有时我需要删除目的地的<date_dir>目录。 为此,我尝试了以下命令:

rsync -avh <date_dir> <server_name>:/path/of/the/directory/where/i/have/permission/ --delete

此命令删除目的地<date_dir>的内容,但不删除目录<date_dir>本身。

我还尝试在 rsync 命令中提供--force-delete ,但它在我的系统上出现以下错误:

rsync: --force-delete: unknown option

使用rsync删除远程服务器上的<date_dir>目录的命令是什么。

PS:我尝试使用SSH设置无密码身份验证,但我无权这样做。

由于这是您要复制的目录,因此rsync不会删除它。 --delete表示删除发送方不存在的目录或文件。 显然, date_dir存在于您的本地机器上(否则 rsync 会抱怨复制不存在的目录)。 如果您想保留本地目录并只删除删除副本, rsync不是正确的工具,但您可以使用rsh ..... rm -r删除远程端的目录。

解决方案

在给定的上下文中,以下命令对我有用:

rsh <server_name> "rm -rf /path/of/the/directory/where/i/have/permission/<date_dir>"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM