Tar: create archive exclure les répertoires sauf un
J'ai des répertoires avec des fichiers
dir_archive/somedir1
dir_archive/somedir2
dir_archive/somedir3
dir_archive/mydir
dir_archive/mydir/excludedir1
dir_archive/mydir/excludedir2
dir_archive/mydir/excludedir3
dir_archive/mydir/many_other_directories...
dir_archive/mydir/my_archive_dir
Je veux créer des tar(gz) archive dir_archive.tar.gz avec tous les fichiers et répertoires à exclure
dir_archive/mydir/excludedir1
dir_archive/mydir/excludedir2
dir_archive/mydir/excludedir3
dir_archive/mydir/many_other_directories...
mais comprennent
dir_archive/mydir/my_archive_dir
Je ne veux pas utiliser --exclude
pour chaque répertoire
tar cvfz dir_archive.tar.gz --exclude=dir_archive/mydir/excludedir1 --exclude=dir_archive/mydir/excludedir2 --exclude=dir_archive/mydir/excludedir3
J'essaie d'utiliser --add-file
mais ça ne fonctionne pas:
tar cvfz dir_archive.tar.gz --exclude=dir_archive/mydir --add-file=dir_archive/mydir/my_archive_dir dir_archive
Existe un moyen simple? Grâce
source d'informationauteur kubedan | 2012-04-19
Vous devez vous connecter pour publier un commentaire.
Un autre moyen serait d'abord à l'exclusion de la
mydir
et en ajoutant lemy_archive_dir
Malheureusement, ajoutant ne fonctionne pas avec les archives zippés.
La
--exclude
option prend un modèle que l'argument, donc, si les noms des répertoires d'être exclus sont similaires, on peut les éviter et comprennent toujours l'archive dirIl est également possible de créer un fichier avec les noms de tous les fichiers que vous souhaitez inclure et de donner la liste de goudron avec option
-T
ou--files-from
(ou de la même façon liste les fichiers concernés et donner la liste avec l'option-X
).