Liste todas as correspondências de regex, uma por linha de saída

0

Eu sei que posso encontrar correspondências de regex usando egrep .

Minha necessidade é um pouco mais esotérica:

Eu preciso listar todas as correspondências regex, uma por linha de saída.

Então, assuma um arquivo contendo o seguinte:

This is just some sample 1text to illustrate the 2text seeker I had in mind.
As you can see in this 3text, I have many 4text matches, more than one 5text match per line of 6text.

Com uma regex de / [0-9]+text /, quero que a saída seja:

1text
2text
3text
4text
5text
6text

Para encurralar um programa para fazer exatamente isso, existe alguma maneira de gerar a saída desejada usando comandos padrão?

    
por pepoluan 25.06.2016 / 07:44

1 resposta

1

egrep -o '[0-9]+text' filename

Na página do egrep:

-o, --only-matching

Print only the matched (non-empty) parts of a matching line, with each such part on a separate output line.

    
por 25.06.2016 / 11:13