Linux fornece grep
para filtragem de texto. Mas em algumas situações podemos precisar de uma ferramenta mais extensa para corresponder a um determinado padrão em determinados arquivos de texto. Esta ferramenta é chamada Extended Global Regular Expression Print
ou simplesmente egrep
. egrep
fornece características estendidas sobre as normais grep
tool.
Syntax de egrep
comando é como abaixo.
egrep FLAG REGEX FILE
- `FLAG` é usado para mudar algum comportamento do `egrep`comando.
- `REGEX` é o padrão que queremos pesquisar no formato regex.
- `FILE` é o nome do ficheiro que vamos pesquisar em
Search Normalmente
Podemos usar egrep
para pesquisar texto normal sem fornecer expressão regular. Só precisamos fornecer o termo que queremos pesquisar. Neste exemplo vamos pesquisar ismail
no arquivo chamado /etc/passwd
.
$ egrep ismail /etc/passwd
Linhas de Busca Contém Caracteres Numéricos
Podemos especificar caracteres numéricos usando o que significa um de valor numérico de 0 a 9.
$ egrep ''/etc/passwd
Linhas de correspondência Contém caracteres do alfabeto
Também podemos especificar caracteres do alfabeto com para caracteres minúsculos e
para caracteres maiúsculos. Neste exemplo combinaremos caracteres maiúsculos.
$ egrep ''/etc/passwd
Match All Lines Starting with Alphabet
Podemos combinar o início das linhas com ^
sinal. Neste exemplo vamos procurar todas as linhas onde começa com caracteres alfa.
$ egrep '^' myinput.py
Match All Lines Ending with Numeric
Podemos especificar o fim da linha com sinal $
. O seguinte comando listará todas as linhas que terminam com um caractere numérico.
$ egrep '$' myinput.py
Match Caseinsenstive
egrep
é case senstive por padrão. Sensível a maiúsculas e minúsculas significa que caracteres maiúsculos e minúsculos serão diferentes como A
é diferente de a
. Podemos fazer nossa combinação de maiúsculas e minúsculas sensível se quisermos com -i
opção como bandeira. O exemplo a seguir combinará todas as seguintes palavras
- IsmaiL
- ismAIL
- ISMAIL
$ egrep -i 'ismail' myinput.py