como localizar um ip em arquivo bagunçado [RESOLVIDO]

13. Re: como localizar um ip em arquivo bagunçado [RESOLVIDO]

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 21/01/2016 - 14:29h

Olá,

para "pegar" os pontos tbm, basta fazer assim:

egrep -o '([0-9]+\.?){4}' arquivo.txt


abs
---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---


  


14. Re: como localizar um ip em arquivo bagunçado [RESOLVIDO]

Renan Arantes
R3nan

(usa Debian)

Enviado em 21/01/2016 - 14:44h

bom tb em, tony poderia explicar a syntax do egrep utilizada ?


15. Re: como localizar um ip em arquivo bagunçado [RESOLVIDO]

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 21/01/2016 - 15:22h

Claro!

Vamos lá..
egrep -o '([0-9]+\.?){4}' arquivo.txt


egrep: É o grep com expressões regulares ( mesma coisa que grep -e)
-o : A opção -o , traz a somente o "match" e não a linha inteira.
([0-9]+\.?){4} : Vale lembrar que em expressões regulares o sinais/metacaracteres aqui utilizados representam:
+ : è um quantificador. Ele diz que o caractere ou expressão a sua esquerda deve existir ao menos uma ou mais vezes.
? : è um quantificador tbm: Ele diz que o caractere ou expressão a sua esquerda pode existir ou não ( 0 ou mais vezes).
{}: è um quantificador. O numero que estiver dentro das chaves diz quantas vezes o caractere ou expressão a sua esquerda deve existir.
(): è um agrupador: Como o nome ja diz ele agrupa expressões

Resumindo, a expressão aqui é traduzida assim: Procure por 4 sequencias de: (Um ou mais numeros de 0 à 9, seguidos ou não de um ponto literal)

abs
---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---


16. Re: como localizar um ip em arquivo bagunçado [RESOLVIDO]

Renan Arantes
R3nan

(usa Debian)

Enviado em 21/01/2016 - 15:47h

muito show! ja li sobre expressões regulares mas não fui afundo, é um pouco complicado de intender mas é bem bacana, imagino a quantidade de problemas que é possível resolver com elas...


17. Re: como localizar um ip em arquivo bagunçado [RESOLVIDO]

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 21/01/2016 - 15:52h

Cara, sem ER's eu não sou nada. rsrss

OBS:: Não é dificil (serio, sem zuera) Só exige um pouco de paciência no começo para entender a mecânica da coisa. É igual matemática, depois que dominou a formula o resto é fácil, mas não significa que não será trabalhosa. rs

abs
---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---


18. COMO LOCALIZAR UM IP EM ARQUIVO BAGUNÇADO [RESOLVIDO]

marcio mendes mendes
conectadohost

(usa XUbuntu)

Enviado em 22/01/2016 - 10:39h

Olá,
obrigado pela ajuda dos amigos, sem ajuda de vocês eu ia ficar parado no meio do caminho, consegui terminar o script, só vou editar para não ficar com meus dados e vou postar no VOL.



---> A arte de programar consiste na arte de organizar e dominar a complexidade.
---> Dijkstra <---


19. Re: como localizar um ip em arquivo bagunçado [RESOLVIDO]

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 22/01/2016 - 12:48h

Noix!

Tamo ae pra ajudar.

abs


---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---


20. res: como localizar um ip em arquivo bagunçado [RESOLVIDO]

marcio mendes mendes
conectadohost

(usa XUbuntu)

Enviado em 23/01/2016 - 22:33h

tonyhts escreveu:

Olá,

para "pegar" os pontos tbm, basta fazer assim:

egrep -o '([0-9]+\.?){4}' arquivo.txt


abs
---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---



caramba tonyhts esse comando faz milagre
egrep -o '([0-9]+\.?){4}' arquivo.txt

eu tinha um arquivo todo bagunçado que eu precisava pegar só os ips, para um outro projeto.
veja só como ele tava http://i.imgur.com/3SUFYjA.png pra mim era impossível pegar só os ips

com esse seu comando consegui pegar somente os ips
93.77.247.136
1428114788
178.94.172.101
1428114790
77.38.189.207
1428114793
31.173.240.90
1428114797
193.104.41.186
1428178595
158.181.214.49
1428333236
1.52.46.107
1428333250
218.53.116.177

ai depois eu usei um script pra validar os ips.

93.77.247.136
178.94.172.101
77.38.189.207
31.173.240.90
193.104.41.186
158.181.214.49
1.52.46.107
218.53.116.177
eu achava que era impossível pegar somente os ips desse arquivo mas esse comando egrep -o é impressionante.



---> A arte de programar consiste na arte de organizar e dominar a complexidade.
---> Dijkstra <---


21. Re: como localizar um ip em arquivo bagunçado [RESOLVIDO]

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 25/01/2016 - 00:01h

Cara, vc que ja tem experiencia com scripts, recomendo fortemente que estude ER. É incrível o que se pode fazer com elas.
Qualquer comando se torna um Super comando com ERs. rs

OBS: A ER que construi foi para o problema anterior, caso for usar a expressão em arquivos com mais dados, use esta:
egrep -o '([0-9]+\.){3}[0-9]+' 


Assim, ela ira trazer somente os ips.

A que uso nos meus scripts não é bonita, mas gareante que somente ips validos são impressos.:
egrep -o '([0-9]{1,3}\.){3}[0-9]{1,3}' 


abração!
---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts