Comment inclure des sauts de ligne dans une recherche en moins?

16

Comment puis-je rechercher des sauts de ligne (ou des fins de ligne) dans le cadre d'une recherche utilisant moins?

Par exemple, j'aimerais rechercher length=9\n, mais je ne veux pas simplement rechercher length==9car cela obtiendrait des correspondances pour length=90\n.

J'utilise GNU bash, version 4.0.33 (1) -release (x86_64-pc-linux-gnu) sur Ubuntu 9.10 (Karmic Koala)

J'ai essayé de lire le manuel convivial, mais il a dit

/pattern

Recherchez dans le fichier la N-ème ligne contenant le motif. N par défaut à 1. Le modèle est une expression régulière, comme reconnu par la bibliothèque d'expressions régulières fournie par votre système. La recherche commence à la deuxième ligne affichée (mais voyez les options -a et -j, qui changent cela).

et je ne sais pas comment RTFM au-delà de cela.

Andrew Grimm
la source
1
Vous pouvez également trouver des recherches ancrées aux limites des mots pour être utiles. /\<length=9\>trouvera "longueur = 9" qui est n'importe où sur une ligne sans faire correspondre "longueur = 90" ou "longueur de chaîne = 9". Voir man 7 regexet man greppour plus.
pause jusqu'à nouvel ordre.
1
Pour ceux qui recherchent une réponse au titre de la question: je ne pense pas que vous puissiez inclure des sauts de ligne dans une recherche en moins. Cela signifie que les recherches multilignes en moins ne semblent pas possibles.
drevicko

Réponses:

11

Tu peux faire:

/pattern$

Le motif remplace pattern, mais le $doit rester, il indique à la recherche de chercher le motif, puis la fin de la ligne.

Vous feriez donc:

/length=9$
Wuffers
la source