Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 18/10/2011, à 09:01

Hibou57

[Tip] Si “tar --exclude” semble ne pas fonctionner

Je viens de me faire avoir, et la page man n’est pas claire à ce sujet. Si un des mainteneurs de la page man peut y ajouter des exemples, ça ne serait pas inutile.

Pour utiliser plusieurs patterns d’exclusion, il faut répéter plusieurs fois l’option “--exclude=pattern”. Si comme je le faisais vous faites

tar --exclude="dir1/*.e1;dir2/*.e2;…"

et que vous avez essayé avec tous les séparateurs imaginables et que aucune exclusion ne semble vouloir s’appliquer, essayer plutôt

tar --exclude="dir1/*.e1" --exclude="dir2/*.e2" …

Ça marche

Autre chose aussi. La pattern ne fonctionne pas ici comme avec l’expansion du shell. Si un pattern contient “*.*”, alors cela exclura même les fichiers dont le nom est du type “.nom-fichier”

Pour ça par contre, je n’ai pas trouvé de solution commode, sauf à lister explicitement toutes les extensions possible.

D’ailleurs, est‑il normal ou pas que “*.*” match “.nom-fichier” ici ? Une question à gratter peut‑être.

Dernière modification par Hibou57 (Le 18/10/2011, à 09:07)


Hajimemashteeeee… \(^o^)/ Tachikoma desu (^_^;)
Le saviez‑vous : le j’m’en foutisme est la cause de la plupart des fléaux du monde contemporain.
Mangez des standards : un grand bol de Standard tous les matins, et vous débutez la journée en pleine forme !
bulleforum.net — Forum de discussions, La Bulle (papotage de la vie courante ou choses trop sérieuses)

Hors ligne

#2 Le 18/10/2011, à 09:20

pingouinux

Re : [Tip] Si “tar --exclude” semble ne pas fonctionner

Bonjour,
Pour contourner le problème :

--exclude="dir1/?*.*"

Hors ligne

#3 Le 18/10/2011, à 10:51

Hibou57

Re : [Tip] Si “tar --exclude” semble ne pas fonctionner

Je viens d’essayer, ça marche.

Mais comment as‑tu fais pour le savoir ?


Hajimemashteeeee… \(^o^)/ Tachikoma desu (^_^;)
Le saviez‑vous : le j’m’en foutisme est la cause de la plupart des fléaux du monde contemporain.
Mangez des standards : un grand bol de Standard tous les matins, et vous débutez la journée en pleine forme !
bulleforum.net — Forum de discussions, La Bulle (papotage de la vie courante ou choses trop sérieuses)

Hors ligne

#4 Le 18/10/2011, à 11:09

pingouinux

Re : [Tip] Si “tar --exclude” semble ne pas fonctionner

Dans l'expansion des noms de fichiers,

  • * correspond à zéro ou un nombre quelconque de caractères

  • ? correspond à un et un seul caractère

Voir :

man bash   # Rubrique "Pattern Matching"

Hors ligne

#5 Le 18/10/2011, à 12:27

Hibou57

Re : [Tip] Si “tar --exclude” semble ne pas fonctionner

Je n’aurais pas deviné, parce que dans mon shell, “ls -a *.*” ne renvoie pas “.htaccess” par exemple, tandis que “ls -a .*” le renvoie.

Il faudra que je sois plus attentif à ces petits pièges à l’avenir, parce que inclure des fichiers non‑attendus, ou même réciproquement exclure des fichiers attendus, ce sont des accidents qu’il est préférable d’éviter.

Dernière modification par Hibou57 (Le 18/10/2011, à 12:28)


Hajimemashteeeee… \(^o^)/ Tachikoma desu (^_^;)
Le saviez‑vous : le j’m’en foutisme est la cause de la plupart des fléaux du monde contemporain.
Mangez des standards : un grand bol de Standard tous les matins, et vous débutez la journée en pleine forme !
bulleforum.net — Forum de discussions, La Bulle (papotage de la vie courante ou choses trop sérieuses)

Hors ligne