Catsort - Concatenar resultado filtrando e removendo repetidas

Publicado por Eduardo Vieira Mendes 31/05/2008

[ Hits: 7.537 ]

Download catsort.sh




Script para concatenar conteúdo de um arquivo, filtrando por palavra ou não e removendo as entradas duplicadas.

Ótimo quando se necessita filtrar por exemplo os acessos invalidos ao SSH, retornando somente o nome do usuário, ou somente o IP por exemplo.

Salve no seu PC e faça:

chmod +x catsort.sh

Depois é só executar:

./catsort.sh

  



Esconder código-fonte

#!/bin/sh
###################################################################################
# Script para mostrar aquivo em ordem alfabética suprimindo os resultados repetidos.
# Ideal para suprimir usuários que se conectam ao ssh repetidas vezes.
# Criado por:
# Eduardo Vieira Mendes
# eduardovmendes@gmail.com
# LUS: 298813
############################################

uso() {
# Função para mostrar a ajuda!
        echo "================================================================="
        echo "= Mostrar arquivo em ordem alfabética suprimindo os repetidos   ="
        echo "= Uso: catsort <arquivo> <filtro> <delimitador> <campo[s]>      ="
        echo "= Onde:                                                         ="
        echo "= <arquivo>       Arquivos a ser concatenado                      ="
        echo "= <filtro>        Palava a ser filtrada no texto                  ="
        echo "= <delimitador>   Caractere delimitador                           ="
        echo "= <campo[s]>      Quantidade de campos a serem mostrados          ="
        echo "= Ex.: catsort /var/log/secure Failed : 7                       ="
        echo "================================================================="
        echo "= Pode ser usado espaco para os campos <filtro> e <delimitador> ="
        echo "= Mas os mesmo devem ser colocados entre aspas                  ="
        echo "= Utilidade disto: caso vc coloque espaco no campo <filtro>     ="
        echo "= nao havera filtro, mostrando todo o texto                     ="
        echo "================================================================="
        exit 1
}

# Se repassado menos que 4 parâmetros retorna a ajuda
[ "$#" -lt 4 ] && uso

# Caso contrário executa a busca
cat $1 | grep "$2" | cut -d "$3" -f $4 | sort | uniq

Scripts recomendados

Desligando o computador quando acabarem as músicas na sua lista de reprodução do MPD

baixar mp3 do site mp3tube.net

Script para atualização do UVSCAN

Script para configuracao rapida da eth0

Script de instalação do VLC completo (via slackbuilds)


  

Comentários
[1] Comentário enviado por SMarcell em 31/05/2008 - 17:58h

Só uma dica:

Em vez de utilizar vários 'echos' seguidos, você poderia utilizar o cat:

cat << end
blablablabla
blablablabla
blablablabla
end

ou ainda o próprio 'echo':

echo "
blablablabla
blablablabla
blablablabla
"

Falou!!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts