小编hal*_*alp的帖子

rsync 不会删除目标文件

我正在尝试将随时间变化的目录镜像到另一个目录。我的问题是 rsync 不会删除目标上的文件,如果它们不再存在于源目录中。这是一个演示脚本:

#!/bin/sh

set -x

DIR1=/tmp/1
DIR2=/tmp/2

rm -rf $DIR1
rm -rf $DIR2

mkdir $DIR1
mkdir $DIR2

echo "foo" > $DIR1/a
echo "bar" > $DIR1/b

rsync -a $DIR1/* $DIR2

rm -f $DIR1/a

rsync -a --delete $DIR1/* $DIR2

ls -1 $DIR2
Run Code Online (Sandbox Code Playgroud)

这是输出:

+ DIR1=/tmp/1
+ DIR2=/tmp/2
+ rm -rf /tmp/1
+ rm -rf /tmp/2
+ mkdir /tmp/1
+ mkdir /tmp/2
+ echo foo
+ echo bar
+ rsync -a /tmp/1/a /tmp/1/b /tmp/2
+ rm -f /tmp/1/a
+ rsync -a --delete …
Run Code Online (Sandbox Code Playgroud)

linux rsync

26
推荐指数
3
解决办法
4万
查看次数

5
推荐指数
2
解决办法
8820
查看次数

标签 统计

linux ×2

rsync ×1

scheduling ×1