Grep élégant sur dates

Résolu
DonutMan -  
 DonutMan -
Bonjour à tous/toutes,

j'ai un ensemble de fichiers dont le nom contient une année.
Par exemple:

toto_1998.txt;
toto_1999.txt;
toto_2000.txt;
toto_2001.txt;
etc.


je cherche un grep élégant qui me renverrait l'ensemble des fichiers toto compris entre deux années.

Entre 2000 et 2007, c'est simple, il me suffit de dire :

ls | grep -E '200[0-7]'


En revanche, ça se complique si on chevauche le millénaire... Par exemple entre 1995 et 2002....

La seule solution que j'ai trouvé c'est :

ls | grep -E '(1995|1996|1997|1998|1999|2000|2001|2002)'

Ca marche mais je ne trouve pas ça très beau... Et potentiellement ça devient très long si l'écart entre les deux années augmente !

Avez-vous des idées ou des suggestions ?

Merci d'avance

1 réponse

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 430
 
Salut,

egrep '199[5-9]|200[0-2]'

;-))
1
DonutMan
 
Ah bah oui, je n'y avais pas pensé... Merci beaucoup :)
0