hugobcar
(usa Red Hat)
Enviado em 01/12/2008 - 15:46h
Cara o Nelio está certo, dessa forma vc nunca ira aprender nada. Tenho varios amigos assim, que tem capacidade, mas a PREGUIÇA fala mais alto, é muito mais fácil receber a resposta pronto do que pensar para fazer... De qualquer forma vou te ajudar.
Copia tudo pra baixo e tenta dar o cat em manipulacao_2.txt
Obs.: Nao testei o script.. faz um teste ai.
################
#!/bin/bash
#Filtragem do relorio de acesso
echo Os acessos negados foram:
echo \
echo ' IP Data e Hora URL Negada'
echo \
# Filtra somente os acessos negados, e manda a saida para
# um outro arquivo chamado manipulacao, sendo que as
# posicoes $1 e $3 foram invertidas, de acordo com o
# proposto. A primeira posição deve conter o IP, a segunda # a data e horario,
# transformada de UNIXTIME para data e
# horario normal, e a terceira a URL Negada.
awk '$4 == "TCP_DENIED/403" {print $3, $1, $7}' relatorio_acesso.txt > manipulacao.txt
# esse arquivo relatorio_acesso.txt ja existe e esta no
# mesmo diretorio que esse script ( que é na propria cota
# do usuario root).
sort -r manipulacao.txt > manipulacao_1.txt
# uso do comando sort com parametro -r, para que quando
# impresso,apareca por grupos de mesmos IP's.
### Linhas adicionadas por hugobcar
cat manipulacao_1.txt | while read linha; do
ip=`echo $linha | awk {'print $1'}`
datahora=`echo $linha | awk {'print $2'}`
url=`echo $linha | awk {'print $3'}`
datahoraconvertidas=`date --date='1/1/1970 + 'date --date='1/1/1970 + '$datahora' seconds' +%d"/"%m"/"%Y" - "%H":"%M":"%S`
echo $ip" "$datahoraconvertidas" "$url >> manipulacao_1.txt
done