Comparação de linhas

1. Comparação de linhas

Fellype Santos
fellype102030

(usa Linux Mint)

Enviado em 26/11/2017 - 15:39h

Olá, estou criando um Script, preciso de uma ajuda.

Eu criei vários arquivos de acordo com a quantidade de linhas de um arquivo de log, os nomeando com os ips contido em uma coluna dentro desse arquivo.

Nesse caso eu preciso enviar as informações das outras colunas referente o IP


Ex: dentro do arquivo tem o IP 192.168.10.50 na coluna IP, então todas as outras colunas da linha onde está esse IP tem que ser enviado para o arquivo criado nomeado com esse IP



  


2. Re: Comparação de linhas

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 26/11/2017 - 15:47h

fellype102030 escreveu:

Olá, estou criando um Script, preciso de uma ajuda.

Eu criei vários arquivos de acordo com a quantidade de linhas de um arquivo de log, os nomeando com os ips contido em uma coluna dentro desse arquivo.

Nesse caso eu preciso enviar as informações das outras colunas referente o IP


Ex: dentro do arquivo tem o IP 192.168.10.50 na coluna IP, então todas as outras colunas da linha onde está esse IP tem que ser enviado para o arquivo criado nomeado com esse IP


grep 192.168.10.50 log.txt > 192_168_10_50.txt 


------------------------------------------| Linux User #621728 |-----------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------| Linux User #621728 |-----------------------------------------



3. Resposta

Fellype Santos
fellype102030

(usa Linux Mint)

Enviado em 26/11/2017 - 16:05h

Mas se eu determinar o IP, o Script vai jogar somente as informações desse IP no arquivo log para o arquivo criado. Sendo que dentro do arquivo log existe outros IPs.


4. Re: Comparação de linhas

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 26/11/2017 - 16:10h

Boa tarde Fellype.
Poste uma linha na integra, com todos os campos e o separador de campos.
Att.:
Marcelo Oliver


5. Re: Comparação de linhas

Fellype Santos
fellype102030

(usa Linux Mint)

Enviado em 26/11/2017 - 16:24h

msoliver escreveu:

Boa tarde Fellype.
Poste uma linha na integra, com todos os campos e o separador de campos.
Att.:
Marcelo Oliver


Meu Script está assim até o momento

#!/bin/bash

linha=$(cat /var/log/squid/access.log | awk '{ print $1}') # vai retornar as informações da primeira coluna


for i in $linha
do

touch $i /home/servidor/trabalho/arquivo/$i

done # vai criar os arquivos de acordo com a quantidade de informações da coluna 1 do access.log













6. Re: Comparação de linhas

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 26/11/2017 - 16:34h

fellype102030 escreveu:

msoliver escreveu:

Boa tarde Fellype.
Poste uma linha na integra, com todos os campos e o separador de campos.
Att.:
Marcelo Oliver


Meu Script está assim até o momento



o marcelo se referiu a vc madar uma linha do arquivo fonte ... no caso uma linha do arquivo de log !!

------------------------------------------| Linux User #621728 |-----------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------| Linux User #621728 |-----------------------------------------



7. Resposta

Fellype Santos
fellype102030

(usa Linux Mint)

Enviado em 26/11/2017 - 16:43h

Mauriciodez escreveu:

fellype102030 escreveu:

msoliver escreveu:

Boa tarde Fellype.
Poste uma linha na integra, com todos os campos e o separador de campos.
Att.:
Marcelo Oliver


Meu Script está assim até o momento



o marcelo se referiu a vc madar uma linha do arquivo fonte ... no caso uma linha do arquivo de log !!

------------------------------------------| Linux User #621728 |-----------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------| Linux User #621728 |-----------------------------------------



1506035160.700 192.168.10.50


8. Re: Comparação de linhas

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 26/11/2017 - 17:06h

fellype102030 escreveu:

Mauriciodez escreveu:

fellype102030 escreveu:

msoliver escreveu:

Boa tarde Fellype.
Poste uma linha na integra, com todos os campos e o separador de campos.
Att.:
Marcelo Oliver


Meu Script está assim até o momento



o marcelo se referiu a vc madar uma linha do arquivo fonte ... no caso uma linha do arquivo de log !!

------------------------------------------| Linux User #621728 |-----------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------| Linux User #621728 |-----------------------------------------

1506035160.700 192.168.10.50

Segue:
while IFS=" " read -r cp1 cp2;do
echo "$cp1" >> "$cp2".txt
done<arquivo.log

Se tiver dois campos, o exemplo acima deve funcionar.

Marcelo Oliver






9. Re: Comparação de linhas

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 26/11/2017 - 17:12h

v se isso te ajuda
#!/bin/bash
registros=$(cat log.txt | awk '{print $2}' | sort | uniq)
for x in $registros
do
grep $x log.txt > $x.txt
done

------------------------------------------| Linux User #621728 |-----------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------| Linux User #621728 |-----------------------------------------



10. Resposta

Fellype Santos
fellype102030

(usa Linux Mint)

Enviado em 26/11/2017 - 17:55h

Mauriciodez escreveu:

v se isso te ajuda
#!/bin/bash
registros=$(cat log.txt | awk '{print $2}' | sort | uniq)
for x in $registros
do
grep $x log.txt > $x.txt
done

------------------------------------------| Linux User #621728 |-----------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------| Linux User #621728 |-----------------------------------------



Deu certo Valeu cara


11. Resposta

Fellype Santos
fellype102030

(usa Linux Mint)

Enviado em 26/11/2017 - 17:56h

Consegui aqui galera, vlw pela ajuda ae manos


12. Re: Comparação de linhas

Mauriciodez
Mauriciodez

(usa Debian)

Enviado em 26/11/2017 - 21:08h

fellype102030 escreveu:

Consegui aqui galera, vlw pela ajuda ae manos


marque seu tópico como "resolvido" e depois marque uma "melhor resposta".

Abçs

------------------------------------------| Linux User #621728 |-----------------------------------------

" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"

------------------------------------------| Linux User #621728 |-----------------------------------------







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts