Rsync - 在一个语句中递归地包含许多文件夹中的几个

Rsync - 在一个语句中递归地包含许多文件夹中的几个

为了本文的目的,假设我有一个名为“misc”的文件夹,其中有 100 个子文件夹,名称分别为 001 到 100。每个文件夹都有许多子文件夹和文件。

我想编写一个 rsync 命令,以递归方式仅备份名为 009、053 和 087 的文件夹。

此命令适用于备份整个“misc”文件夹:

rsync -v --progress --recursive /home/user/misc /home/user/backup/misc

我曾多次尝试使用包含和排除参数(仅备份我想要的特定子文件夹),但每次尝试都导致 /home/user/backup/misc 在命令成功运行后成为一个空文件夹。

有人可以在这个命令(上面)中添加包含和排除参数的正确使用来实现我的尝试吗?

答案1

rsync -avz将以递归方式备份所有文件。如果你将 rsync 编写成 bash 脚本,则可以只备份那些特定的文件夹

例如:

#!/bin/bash
rsync -avz /home/user/misc/009 /home/user/backup/misc/
rsync -avz /home/user/misc/053 /home/user/backup/misc/
rsync -avz /home/user/misc/087 /home/user/backup/misc/

相关内容