[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Script de consulta LDAP lento
From: |
Fabiano Caixeta Duarte |
Subject: |
Re: [shell-script] Script de consulta LDAP lento |
Date: |
Thu, 27 Mar 2008 17:10:52 -0300 |
User-agent: |
Thunderbird 2.0.0.0 (X11/20070326) |
César Vianna escreveu:
> Pessoal, tenho um arquivo "emails.txt" que possui um email por linha.
> Preciso saber quais desses emails não estão em um LDAP. Fiz o script
> abaixo. Funciona, porém MUITO lento. São uns 10000 registros.
>
> Será que não tem outra implementação mais rápida?
>
>
> # testa se o email contido em emails.txt está no ldap (atributo sn). A linha
> numEntries só é exibida pelo LDAP quando o registro é encontrado.
>
> for i in `cat emails.txt`
> do
> ldapsearch -x sn=$i|if grep numEntries; then echo > /dev/null; else
> echo $i >> nao_existe.txt; fi
> done
Mude a abordagem.
Pegue todos as entradas ldap que possuem atributo de e-mail (que deveria
ser mail e não sn - surname - sobrenome). Depois filtre com grep todos
os e-mails que estão no e-mails.txt e não estão na listagem obtida.
ldapsearch -LLL -b "ou=Users,dc=domain,dc=com" -x '(!(mail=*))' mail |
egrep ^mail > listagem
grep -vf e-mails.txt listagem > nao_existe.txt
--
Fabiano Caixeta Duarte
Especialista em Redes de Computadores
Linux User #195299
Ribeirão Preto - SP