Dans un rsync, j'essaie d'exclure des sous-répertoires qui correspondent à un modèle. Mais, je ne peux pas le faire fonctionner. J'ai suivi plusieurs exemples trouvés ici et sur Google. Mais je n'obtiens pas les bons résultats. Voici le bit d'option de ma commande:
-avh --exclude 'branch*' --stats --delete --link-dest=$LNK
Ma structure de répertoire source est
/root
/branch1
/branch2
/branch3
/other
/stillAnother
/etc
Cela fait partie d'un script de sauvegarde. $ LNK est un lien vers la destination rsync de la veille.
Je ne veux pas / root / branch1, / root / branch2, / root / branch3. ou leur contenu à synchroniser. Mais ils sont.
Voici les bits d'exclusion que j'ai déjà essayés:
--exclude=branch*
--exclude='branch*'
--exclude '/branch*'
--exclude /branch*
Merci pour toute aide / conseil.
EDIT - pour résoudre le drapeau "possible en double"
Cette question concerne une liste connue de répertoires. Je dois exclure tous les répertoires qui suivent un modèle, même si ces répertoires n'existent pas encore. c'est à dire de mon exemple, d'autres répertoires nommés /branch*
peuvent être ajoutés. J'ai besoin de rendre mon script évolutif et d'éviter de modifier le script lorsqu'un répertoire correspondant au modèle est ajouté, car ces répertoires peuvent être temporaires.
*branch*
ou /root/branch*
non la forme courte branch*
- courte n'est pas trouvée et n'est donc pas exclue.
--exclude '*branch*
)