GNU/Linux >> Tutoriels Linux >  >> Linux

Commande Shell vers le répertoire tar en excluant certains fichiers/dossiers

Vous pouvez avoir plusieurs options d'exclusion pour tar donc

$ tar --exclude='./folder' --exclude='./upload/folder2' -zcvf /backup/filename.tgz .

etc. fonctionnera. Assurez-vous que mettre --exclude avant les éléments source et destination.


vieille question avec beaucoup de réponses, mais j'ai trouvé qu'aucune n'était assez claire pour moi, alors j'aimerais ajouter mon essai.

si vous avez la structure suivante

/home/ftp/mysite/

avec les fichiers/dossiers suivants

/home/ftp/mysite/file1
/home/ftp/mysite/file2
/home/ftp/mysite/file3
/home/ftp/mysite/folder1
/home/ftp/mysite/folder2
/home/ftp/mysite/folder3

donc, vous voulez créer un fichier tar contenant tout dans /home/ftp/monsite (pour déplacer le site vers un nouveau serveur), mais file3 est juste indésirable, et tout en folder3 n'est pas non plus nécessaire, nous allons donc ignorer ces deux.

nous utilisons le format

tar -czvf <name of tar file> <what to tar> <any excludes>

où c =créer, z =zip et v =détaillé (vous pouvez voir les fichiers au fur et à mesure qu'ils sont saisis, utile pour vous assurer qu'aucun des fichiers que vous excluez n'est ajouté). et f=fichier.

donc, ma commande ressemblerait à ceci

cd /home/ftp/
tar -czvf mysite.tar.gz mysite --exclude='file3' --exclude='folder3'

notez que les fichiers/dossiers exclus sont relatifs à la racine de votre tar (j'ai essayé le chemin complet ici par rapport à / mais je ne peux pas faire fonctionner cela).

j'espère que cela aidera quelqu'un (et moi la prochaine fois que je le chercherai sur Google)


Options possibles pour exclure des fichiers/répertoires de la sauvegarde à l'aide de tar :

Exclure les fichiers utilisant plusieurs modèles

tar -czf backup.tar.gz --exclude=PATTERN1 --exclude=PATTERN2 ... /path/to/backup

Exclure des fichiers à l'aide d'un fichier d'exclusion contenant une liste de modèles

tar -czf backup.tar.gz -X /path/to/exclude.txt /path/to/backup

Exclure les fichiers utilisant des balises en plaçant un fichier de balise dans n'importe quel répertoire qui doit être ignoré

tar -czf backup.tar.gz --exclude-tag-all=exclude.tag /path/to/backup

Vous pouvez exclure des répertoires avec --exclude pour le goudron.

Si vous voulez tout archiver sauf /usr vous pouvez utiliser :

tar -zcvf /all.tgz / --exclude=/usr

Dans votre cas, peut-être quelque chose comme

tar -zcvf archive.tgz arc_dir --exclude=dir/ignore_this_dir

Linux
  1. Comment créer des fichiers d'une certaine taille sous Linux

  2. Comment tar (compresser) des fichiers, en excluant certains fichiers ou répertoires

  3. Comment exclure un répertoire dans find . commande

  4. Exclure le répertoire lors de la création d'un fichier .tar.gz

  5. commande linux pour vider tous les fichiers d'un répertoire

Commande tar Linux - Comment compresser des fichiers sous Linux

Comment exclure un répertoire lors de la recherche de fichiers sous Linux

Comment lister les fichiers de manière récursive sous Linux

Comment compter les fichiers dans le répertoire sous Linux

Premiers pas avec la commande Tar

Comment compter le nombre de fichiers dans un répertoire sous Linux