| 
  • If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • You already know Dokkio is an AI-powered assistant to organize & manage your digital files & messages. Very soon, Dokkio will support Outlook as well as One Drive. Check it out today!

View
 

grep

Page history last edited by PBworks 16 years, 5 months ago

Os programas grep e egrep filtram o conteúdo de arquivos, a diferença é que o egrep aceita expressões regulares. Para fazer uma busca por um termo proceda assim:

   grep -rn 'termo' /etc 
   
   egrep -n '^sergio' /etc/passwd


O parâmetro '-n' indica que o grep ou egrep numerem a linha encontrada. O comportamento padrão do grep é imprimir as linhas que correspondem ao padrão buscado. No caso do egrep se acrescentar-mos o "H" ele retornará o nome de cada arquivo que contiver o padrão
  egrep -rnH '^sergio' /etc/passwd

Usando o parâmetro "-i" a busca ignora maiúsculas e minúsculas, para suprimir as linhas que contém o padrão use o parâmetro "-v", ou seja, ele mostrará as linhas que não contém o padrão, útil para remover linhas de comentários. como abaixo:
 
     cat /etc/services | egrep -v '^#' | less

   
   cat /etc/services | egrep -v '^#' | sed '/^$/d'

Veja mais um exemplo (no caso logado como root) pois se aplica ao /etc que não dá permissão de acesso a todos os arquivos. Queria achar todos os arquivos em /etc que contivessem o meu nome:
   
    egrep -rnH '.*sergio.*' /etc | less

opções interessantes de uso:

   -r  ---> recursividade
   -n  ---> mostra o número de linhas
   -H  ---> mostra o nome do arquivo
   -c  ---> contar número de linhas
No comando abaixo é feita uma listagem recursiva (e completa)
que exibe no começo de cada linha:

  d  --> para diretórios
  l  --> para links
  -  --> para arquivos comuns

exemplo de uma linha do comando 'ls' com a opção '-l'

   drwxr-xr-x 2 sergio sergio 4096 2006-06-19 19:08 bin


  ls -lR | egrep '^d' -c

o grep acima filtra as linhas começadas com 'd', 
ou seja o '^d' pega as linhas que começam com a 
indicação de diretórios, depois faz uma contagem '-c'

!grep colorido

    grep --color=always -nr "padrão" caminho

Comments (0)

You don't have permission to comment on this page.