segunda-feira, 4 de julho de 2011

O comando grep no linux.

O comando grep é muito útil quando usado para filtrar saída de comandos:

$ ps aux | grep root

root 1 0.0 0.0 1120 52 ? S Aug24 0:04 init [3]

root 2 0.0 0.0 0 0 ? SW Aug24 0:00 [kflushd]

root 3 0.0 0.0 0 0 ? SW Aug24 0:00 [kupdate]

root 4 0.0 0.0 0 0 ? SW Aug24 0:00 [kpiod]

root 5 0.0 0.0 0 0 ? SW Aug24 0:12 [kswapd]

O comando acima irá gerar a lista de todos os processos e jogar a saída para o duto (ps aux |). A comando após o duto (grep root), receberá a lista de processos e só jogará para a tela as linhas que contiverem a expressão "root".

Outra utilidade do comando grep é a de buscar por ocorrências de expressões dentro de 1 ou mais arquivos.Exemplo:

$ grep -s servidor /etc/*

/etc/bashrc:alias servidor='rlogin -l fabio servidor'

/etc/fstab:servidor:/home /home nfs defaults 0 0

/etc/hosts:192.168.1.1 servidor servidor.linux.br

/etc/mtab:servidor:/home /home nfs rw,addr=192.168.1.1 0 0

/etc/mtab:servidor:/var/spool/mail /var/spool/mail nfs rw,addr=192.168.1.1 0 0

No exemplo acima, grep pesquisou pela expressão "servidor" dentro de todos os arquivos do diretório /etc. O resultado foi exibido na tela da seguinte forma:

nome do arquivo: linha que contém a expressão


Nenhum comentário:

Postar um comentário