Afficher la nième occurence d'un motif

Fermé
eZula Messages postés 3392 Date d'inscription samedi 26 avril 2008 Statut Contributeur Dernière intervention 8 mai 2021 - 19 oct. 2009 à 22:50
eZula Messages postés 3392 Date d'inscription samedi 26 avril 2008 Statut Contributeur Dernière intervention 8 mai 2021 - 20 oct. 2009 à 11:41
Bonjour,

je suis en train de m'embrouiller. Pour afficher la nième occurence d'un motif, quel est le mieux : grep ou sed -n ? sachant que de toutes manières il n'y aura pas le choix, c'est ou l'un ou l'autre, ou les deux, mais pas autre chose ;)

Exemple de fichier

# motif1

blabla

# motif2

blabla2

# motif 3

blabla3


je souhaite afficher la ligne # motif2, sachant que la chaine motif2 est inconnue, et en ayant uniquement comme donnée que cette ligne commence par un # et en utilisant obligatoirement le fait que c'est la deuxième occurence de ce caractère dans le fichier

Merci

2 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
20 oct. 2009 à 07:28
Salut,

Au choix :

[tmpfs]$ cat plop
# motif1

blabla

# motif2

blabla2

# motif 3

blabla3

[tmpfs]$ grep -m 2 '^#' plop | sed -n '$p'
# motif2

[tmpfs]$ sed -n '/^#/p' plop | sed -n '2p'
# motif2

[tmpfs]$ 

;-))
0
eZula Messages postés 3392 Date d'inscription samedi 26 avril 2008 Statut Contributeur Dernière intervention 8 mai 2021 392
20 oct. 2009 à 11:41
Salut,

D'accord, je pensais qu'il y avait une option directe, surtout dans grep, ta réponse semble infirmer l'hypothèse.

En tout cas ça marche, merci ;)
0