Fala Coopermine, tudo bem? Tem várias opções que dão o mesmo resultado. A mais simples é essa aí mesmo, com o -w que vai procurar pela palavra inteira. Tome cuidado, porém, com o uso do "." (ponto). O grep procura por regular expressions (expressões regulares) nas quais o ponto representa qualquer caracter. Se quiser ser preciso escape do ponto com uma contrabarra. Também não precisa usar o "cat" pois o grep procura direto em arquivos:
grep -w "192\.168\.14\.16" arquivo.log Se não escapar do ponto pode acabar achando outras coisas também, sabe lá. Podia também ter elaborado a expressão regular para colocar limitadores, tipo buscar pelo IP no início da linha com um circunflexo e fazê-lo encontrar apenas "não números" após o 16 com a expressão "^192\.168\.14\.16[^0-9]". Uma boa referência é: http://guia-er.sf.net Abs, Cartola. 2009/8/20 Coopermine <cooperm...@bol.com.br> > Achei... > > Cat arquivo.log | grep -w "192.168.14.16" > > So colocar o -w > > > vlws > > -----Mensagem original----- > De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome > de Coopermine > Enviada em: quinta-feira, 20 de agosto de 2009 17:56 > Para: 'Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)' > Assunto: [FUG-BR] RES: Recortar/consultar arquivo texto > > Achu que descobri o problema.. > Olha so quando dou somente um > > Cat arquivo.log | grep "192.168.14.16" > > 192.168.14.16 648981 142326 > 791307 > 192.168.14.164 7325 8001 > 15326 > > .. ele esta pegando o ip 164 tambem.. estou lendo um manual do gre aki pra > ver se ele filtra somente o parâmetro exato > Porque parece que ele ta retornando tudo que contem! > Se você puder me adiantar fico feliz! > > > -----Mensagem original----- > De: freebsd-boun...@fug.com.br [mailto:freebsd-boun...@fug.com.br] Em nome > de "Fábio Jr." > Enviada em: quinta-feira, 20 de agosto de 2009 17:42 > Para: "Lista Brasileira de Discussão sobre FreeBSD (FUG-BR)" > Assunto: Re: [FUG-BR] Recortar/consultar arquivo texto > > Aqui deu certo, não sei o que pode estar acontecendo ai, talvez um erro > de digitação. Mesmo pq já no grep ele só vai retornar a linha que tem o > 192.168.14.164, nem tem como ele pegar a outra linha pra processar no awk. > > r...@fjunior:~# cat arquivo.log > # Host In (bytes) Out (bytes) Total > (bytes) > > 192.168.14.164 1977421 964437 2941858 > > 192.168.14.16 24022 2925 26947 > r...@fjunior:~# cat arquivo.log | grep 192.168.14.164 | awk '{print $2}' > | sed '1q' > 1977421 > > []s > Fábio Jr. > > > > Coopermine escreveu: > > Ola lista... > > > > > > > > Pergunta básica .. como faço para recortar/consultar em um determinador > > arquivo > > > > > > > > Ex: no arquivo esta assim > > > > > > > > # Host In (bytes) Out (bytes) Total > > (bytes) > > > > 192.168.14.164 1977421 964437 > > 2941858 > > > > 192.168.14.16 24022 2925 > > 26947 > > > > > > > > > > > > Estou recortando assim > > > > > > > > cat arquivo.log | grep 192.168.14.164 | awk '{print $2}' | sed '1q' > > > > > > > > só que esta me retornando o valor do ip 192.168.14.16 e não do 164 > > > > > > > > > > > > Flw qualquer ajuda! > > > > ------------------------- > > Histórico: http://www.fug.com.br/historico/html/freebsd/ > > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd > > > > > > ------------------------- > Histórico: http://www.fug.com.br/historico/html/freebsd/ > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd > > ------------------------- > Histórico: http://www.fug.com.br/historico/html/freebsd/ > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd > > ------------------------- > Histórico: http://www.fug.com.br/historico/html/freebsd/ > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd > ------------------------- Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd