首页 > 解决方案 > 如何从 rsync 目标路径中删除 /Volume

问题描述

我正在尝试类似于时光机的备份,网上很多例子都不完整。我正在尝试执行相对路径 -R 但目标包含 /Volume 并将其隐藏,因此在手动取消隐藏文件夹之前我看不到备份。我也在使用 -R ,因此将创建不存在的目录。目的地是包含稀疏包的 USB 闪存驱动器。

源/卷/驱动器/文件夹目标/卷/USBBackup

我尝试放入我的 filter.txt 文件: H /Volumes/* 包含和不包含此 /Volume 并隐藏。

rsync -avHAXNR --fileflags --force-change --numeric-ids --protect-args --stats --progress --filter="._$FILTER" --exclude-from="$EXC" --link -dest="/Volume/USBBackup/$PREVDIR" "/Volume/Drive/Folder" "/Volume/USBBackup/name-timestamp/" 2> ~/Desktop/rsync-errors.txt

备份的是 /Volume/USBBackup/name-timestamp/Volume/Drive/Folder 隐藏卷。我想要的是 /Volume/USBBackup/name-timestamp/Drive/Folder 不隐藏。

标签: bashrsync

解决方案


您是否考虑过在运行该任务时将工作目录更改为 /Volume?

您应该能够执行以下操作:

(cd /卷;rsync 驱动器/文件夹)

或者你可以:

OLDPWD=$(pwd)
cd /Volumes
rsync Drive/Folder /Volumes/USBBackup....
cd $OLDPWD

推荐阅读