Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 09-01-2015 13:57:44

cemoi
Membre
Distrib. : Debian 3.2.63-2+deb7u2 i686
Noyau : Linux 3.2.0-4-686-pae
(G)UI : XFCE
Inscription : 21-10-2008

[ok]dupliquer arborescence en filtrant les fichiers par nom et partype

Bonjour,
je cherche à dupliquer à dupliquer (en local) une arborescence en filtrant par type de fichier et par nom.

Au départ j'ai pensé à find+cp... mais ça me pause un problème quand je met à jour toute l’arborescence le top serai d'avoir un comportement comme rsync.

au début j'ai pondu ça comme commandes;

find . -iname "*.pdf" -exec cp --parents {} /home/cemoifind_tests/arbo_copie \;

find -iname '*toto*.pdf'-exec rsync -avz /home/cemoi/find_tests/TI_bois_MECA/ {} /home/cemoi/find_tests/arbo_copie \;




il me semble qu'il y a un problème de syntaxe dans ces deux commandes... enikar m'a aidé à trouvé

find -iname '*toto*.pdf'

qui filtre sur l'arborescence juste comme je veux. Âpres ça j'ai regardé du coté de rsync.

un

rsync -a --exclude '*doc' --delete /home/cemoi/find_tests/TI_bois_MECA/ /home/cemoi/find_tests/arbo_copie/



exclu bien tous les *.doc

je susi sur la page man de rsync mais je capte pas tout... et il y a "juste quelques" options qui doivent permettre d'obtenir un filtrage comme avec

find -iname '*toto*.pdf'

mais là je bloque...et le temps me manque hmm

Dernière modification par cemoi (12-01-2015 13:27:05)


Linux debDesk 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u1 (2015-12-14) x86_64 GNU/Linux
Linux debServHome 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u1 (2015-12-14) x86_64 GNU/Linux
Linux lotus 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u6 (2015-11-09) x86_64 GNU/Linux

Hors ligne

#2 09-01-2015 14:40:04

Lunatic
Membre
Lieu : Lyon
Distrib. : Fedora 24
Noyau : Linux 4.6.5-300.fc24.x86_64
(G)UI : Gnome
Inscription : 03-08-2013
Site Web

Re : [ok]dupliquer arborescence en filtrant les fichiers par nom et partype

Salut,

Pourquoi avoir abandonné la solution « rsync » ? Elle dispose bien d'un système de filtre (voir l'option -f ou --filter) qui devrait te permettre de réaliser ce que tu souhaites.

Edit : désolé j'ai lu trop rapidement. Pour comprendre les règles rsync, rien de tel que le man, et sa section « FILTER RULES ». L'as-tu parcourue ?

Dernière modification par Lunatic (09-01-2015 14:42:20)


Je suis aussi sur Twitter et nouvellement sur Diaspora*
Mon blog de geekeries : HAL-9000

(J'applique la règle de proximité)

Hors ligne

#3 09-01-2015 14:53:43

cemoi
Membre
Distrib. : Debian 3.2.63-2+deb7u2 i686
Noyau : Linux 3.2.0-4-686-pae
(G)UI : XFCE
Inscription : 21-10-2008

Re : [ok]dupliquer arborescence en filtrant les fichiers par nom et partype

oui je l'ai lu mais je n'arrive pas à ce que je veux...

je pense utiliser un fichier pour filtrer du coup dans la commande ça donnera un;

--filter=". fichier"



avec dedans le fichier un truc du genre:

- *.doc
- *.docx
- *.JPG
- *.odt
- *.odf
- *.ott

 



ça fonctionne par exlusion mais je sais pas si je fais un + *.pdf ne met que les *.pdf? et je ne sais toujours pas comment filtrer pour avoir que les fichier pdf qui ont toto dans leur nom... hmm


Linux debDesk 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u1 (2015-12-14) x86_64 GNU/Linux
Linux debServHome 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u1 (2015-12-14) x86_64 GNU/Linux
Linux lotus 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u6 (2015-11-09) x86_64 GNU/Linux

Hors ligne

#4 09-01-2015 16:15:17

cemoi
Membre
Distrib. : Debian 3.2.63-2+deb7u2 i686
Noyau : Linux 3.2.0-4-686-pae
(G)UI : XFCE
Inscription : 21-10-2008

Re : [ok]dupliquer arborescence en filtrant les fichiers par nom et partype

j'ai trouvé la solution pour filtrer tous les *.pdf enfin il me semble il me faut tester sur un arborescence importante... merci beaver!!

http://silentorbit.com/notes/2013/08/rs … extension/

je note la commande ici histoire de ne pas la perdre...

rsync -rv --include '*/' --include '*.js' --exclude '*' --prune-empty-dirs Source/ Target/



il me reste à trouver comment mettre que les pdf qui ont le toto dans leur nom wink


Linux debDesk 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u1 (2015-12-14) x86_64 GNU/Linux
Linux debServHome 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u1 (2015-12-14) x86_64 GNU/Linux
Linux lotus 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u6 (2015-11-09) x86_64 GNU/Linux

Hors ligne

#5 12-01-2015 12:57:08

cemoi
Membre
Distrib. : Debian 3.2.63-2+deb7u2 i686
Noyau : Linux 3.2.0-4-686-pae
(G)UI : XFCE
Inscription : 21-10-2008

Re : [ok]dupliquer arborescence en filtrant les fichiers par nom et partype

hello,
bon ba j'avais donné la solution plus haut dans ma commande avec find...

rsync -a --stats --progress --delete --include '*/' --include '*toto*.pdf' --exclude '*' --prune-empty-dirs source/ cible/

rsync synchroniser seulement les fichiers pdf contenant toto dans leur nom
cette commande est recursive, rsync va descendre dans l’arborescence copier les répertoires et y mettre que les fichiers concerné par le filtre.

Have fun! wink

Linux debDesk 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u1 (2015-12-14) x86_64 GNU/Linux
Linux debServHome 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u1 (2015-12-14) x86_64 GNU/Linux
Linux lotus 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u6 (2015-11-09) x86_64 GNU/Linux

Hors ligne

#6 12-01-2015 13:13:43

smolski
administrateur quasi...modo
Lieu : AIN
Distrib. : 8 (jessie) 64 bits + backports
Noyau : 4.6.0-0.bpo.1-amd64
(G)UI : gnome 3.14.1
Inscription : 21-10-2008

Re : [ok]dupliquer arborescence en filtrant les fichiers par nom et partype


"Définition d'eric besson : S'il fallait en chier des tonnes pour devenir ministre, il aurait 2 trous du cul." - JP Douillon
"L'utopie ne signifie pas l'irréalisable, mais l'irréalisée." - T Monod (source :  La zone de Siné)
"Je peux rire de tout mais pas avec n'importe qui." - P Desproges
"saque eud dun" (patois chtimi : fonce dedans)

Hors ligne

Pied de page des forums