Exclure des fichiers lors de la création d'un tar

2012-01-15T03:45:00

Introduction

Un article assez rapide pour indiquer comme exclure des fichiers ou répertoires lors de la création d'un tar. Ce qui peut parfois arriver.

Utilisation

Il existe une option de tar pour exclure un certain nombre de fichier ou répertoire lors de la création d'un tar, qui n'est autre que --exclude, il faut bien faire attention à la syntaxe, autrement cela ne va pas fonctionner.

tar -zcvf my_dir.tar.gz --exclude='file' --exclude='.git' my_directory

Le fichier file et le répertoire .git ne seront pas inclus dans le tar.

C'est bien pratique mais si il y a plus de deux ou trois fichiers, la commande peut rapidement être fastidieuse à écrire. Pour résoudre ce problème, il existe une autre possibilité qui est d'utiliser l'option -X pour spécifier de multiple nom de fichier. Il faudra au préalable créer une fichier que l'on va par exemple appeler exclude.txt, il faudra indiquer les fichiers à exclure.

file
file1
file2
file3
foo
*.bak
.git

Les fichiers matché seront seront exclus.

tar -zcvf my_dir.tar.gz -X exclude.txt my_directory

Il existe aussi l'option -T qui est l'inverse de -X, on indique uniquement les fichiers qu'on souhaite inclure dans le tar.

file
file1
file2
file3

Uniquement les fichiers matché seront inclus dans le tar.

tar -zcvf my_dir.tar.gz -T exclude.txt my_directory

Conclusion

Un article rapide qui présente simplement un petit tips mais qui peut s'avérer très pratique.

comments powered by Disqus