Compte tenu de ce morceau de bash:
PARMS='-rvu'
PARMS+=" --delete --exclude='.git'"
echo $PARMS
rsync ${PARMS} . ${TARGET}
L'écho montre la chaîne PARMS comme prévu, aucune erreur ne s'affiche, mais rsync agit silencieusement comme si les options ajoutées par le + = n'existaient pas. Cependant, cela fonctionne comme prévu:
PARMS='-rvu'
rsync ${PARMS} --delete --exclude='.git' . ${TARGET}
Je suppose que j'ai foiré quelque chose avec des guillemets bash (toujours eu des problèmes avec ceux-ci), mais je ne sais pas exactement quoi et pourquoi les options sont ignorées même si la chaîne semble avoir été construite correctement.
bash
version 4.2.25 sans aucun changement.
echo "$PARMS"
etrsync "${PARMS}"
...