Cette question a déjà des réponses ici :
Commentaires
- Le premier exemple utilise la syntaxe normale de lexpression rationnelle, où le second utilise une syntaxe étendue. Votre version de
find
attend évidemment la première par défaut. Vous ' ne dites pas quel système vous ' utilisez – votrefind
pourrait avoir un commutateur pour activer lanalyse de regexp étendue. Sur FreeBSD, par exemple, ' s-E
- @D_Bye ah, que ' est un bon point. CentOS6. Jai ' essayé
-regextype posix-extended
et cela ' ne fonctionne pas non plus
Réponse
Si vous utilisez GNU
find, cela devrait fonctionner pour vous
find . -regextype sed -regex "./test[0-9]\{2\}.txt"
Explication
-
-regextype sed
– utiliser une expression régulière posix de base (juste parce que cest ce que je connais bien) -
./
– nécessaire car find considère tous les chemins de fichiers sur une recherche relative pour commencer par ce modèle -
[0-9]\{2\}
– 2 instances de la classe de caractères numériques[0-9]
avec le quantificateur\{...\}
parenthèses échappées – par expressions régulières posix de base