2016-05-16 1 views
1

Ce que je suis en train de réaliser est la copie tout au répertoire source dans le répertoire de destination en excluant le répertoire workspace, je la commande suivante pour le faire:Bash Wildcard et utilisation variable

rsync -av --exclude='directory-name*/workspace' sourceDir destinationDir 

qui fonctionne bien , mais si je tente d'utiliser la variable pour le « nom-répertoire »:

VARIABLE_NAME="directory-name" 
rsync -av --exclude='$VARIABLE_NAME*/workspace' sourceDir destinationDir 
+0

Les variables ne sont pas développées entre guillemets simples. Les astérisques non plus, mais je ne suis pas sûr de ce que vous essayez de faire avec. – Biffen

+2

remplacer le guillemet simple avec guillemet double – Jahid

+1

Voir: [Différence entre guillemets simples et doubles dans bash] (http://stackoverflow.com/q/6697753/3776858) – Cyrus

Répondre

3

les variables ne sont pas traités lorsque mis à l'intérieur des guillemets simples, utilisez des guillemets à la place:

rsync -av --exclude="$VARIABLE_NAME"'*/workspace' sourceDir destinationDir