#1 Le 27/06/2012, à 13:56
- OL9245
[Résolu] debutant : pb avec find -regex
j'ai pas encore tout compris
ceci marche :
~/Documents$ find . -regex '.*\.txt'
./toto.txt
./retoto.txt
./testglobstar/d/a/a/test.txt
./testglobstar/d/a/test.txt
./testglobstar/d/test.txt
./testglobstar/a/doc/a/test.txt
./testglobstar/a/doc/test.txt
./testglobstar/a/test.txt
./testglobstar/c/doc/test.txt
./testglobstar/c/test.txt
./testglobstar/test.txt
./testglobstar/b/a/doc/test.txt
./testglobstar/b/a/test.txt
./testglobstar/b/test.txt
mais pas ceci (liste vide) alors que (cf ci-dessus) il y a plein de fichiers test.txt partout
planchoo@LISAH-CBOUQUET:~/Documents$ find . -regex 'test.*'
Dernière modification par OL9245 (Le 27/06/2012, à 16:57)
La farine tombée par terre ne se ramasse pas d'une seule main (proverbe burkinabé)
Hors ligne
#2 Le 27/06/2012, à 14:02
- pingouinux
Re : [Résolu] debutant : pb avec find -regex
Bonjour,
C'est parce qu'avec l'option -regex, il faut que le nom complet du fichier corresponde (par exemple, ./testglobstar/a/test.txt). Utiliser l'option -name.
Hors ligne
#3 Le 27/06/2012, à 14:25
- credenhill
Re : [Résolu] debutant : pb avec find -regex
hello
$ find . -regex '.*test\.*'
Hors ligne
#4 Le 27/06/2012, à 14:37
- OL9245
Re : [Résolu] debutant : pb avec find -regex
merci
Quand même bash c'est unun peu un truc de maso.
En demandant un conseil à mon petit frère (qui est ++intelligent que moi ) il m'a répondu : "Bash est très amusant, un espace oublie peut te faire perdre une demi journée. Une fois que tu as atteint une semaine de perdue, généralement tu te mets au python, au moins si tu te relis deux jours après tu arrives encore a comprendre de quoi il s'agit."
Qu'en pensez-vous ?
La farine tombée par terre ne se ramasse pas d'une seule main (proverbe burkinabé)
Hors ligne
#5 Le 27/06/2012, à 14:44
- Compte anonymisé
Re : [Résolu] debutant : pb avec find -regex
find . -regex '.*\.txt'
Pourquoi pas tout simplement
find ./ -name '*.txt'
Dernière modification par Compte anonymisé (Le 27/06/2012, à 14:46)
#6 Le 27/06/2012, à 15:00
- credenhill
Re : [Résolu] debutant : pb avec find -regex
parce que regex ne se limite pas au seul nom mais à tout le chemin
$ find . -regex '.*2011.*test.\*'
Hors ligne
#7 Le 27/06/2012, à 15:08
- Compte anonymisé
Re : [Résolu] debutant : pb avec find -regex
Pas très bien compris la demande initiale alors.
Pas grave.
#8 Le 27/06/2012, à 15:40
- OL9245
Re : [Résolu] debutant : pb avec find -regex
OL9245 a écrit :find . -regex '.*\.txt'
Pourquoi pas tout simplement
find ./ -name '*.txt'
Pour de vrai, je dois manipuler un lot de 1600 images au format CRW_[0-9]{4}\.tif
Le workflow est un peu compliqué et je débute en bash, donc je fais des tests avant.
La farine tombée par terre ne se ramasse pas d'une seule main (proverbe burkinabé)
Hors ligne
#9 Le 27/06/2012, à 16:00
- OL9245
Re : [Résolu] debutant : pb avec find -regex
Encore un pb : la répétition d'un motif : (motif){3}
marchent :
find ./ -regex '.*toto\.[tx]*'
find ./ -regex '.*toto\.[tx][tx][tx]'
find ./ | egrep toto\.[tx]{3}
marchent pas :
find ./ -regex '.*toto\.[tx]{3}'
find ./ -regex '.*toto\.[tx]\{3\}'
La farine tombée par terre ne se ramasse pas d'une seule main (proverbe burkinabé)
Hors ligne
#10 Le 27/06/2012, à 16:21
- credenhill
Re : [Résolu] debutant : pb avec find -regex
essayer
find ./ -regextype posix-extended -regex '.*toto\.[tx]{3}'
Hors ligne
#11 Le 27/06/2012, à 16:56
- OL9245
Re : [Résolu] debutant : pb avec find -regex
merci
Ca marche cette fois-ci
La farine tombée par terre ne se ramasse pas d'une seule main (proverbe burkinabé)
Hors ligne