Validar e-mails em arquivo CSV
Publicado por Christian Martorano (última atualização em 04/07/2018)
[ Hits: 2.460 ]
Primeiramente, bom dia a todos os companheiros do maravilhoso mundo GNU/Linux.
Criei esse script para validar todos os e-mails que me são retornados por um arquivo "CSV" do CRM da empresa que trabalho.
Estou compartilhando ele para qualquer um que possa lhe ser útil.
Layout do arquivo:
NOME;EMAIL;CPF
Um grande abraço a todos da comunidade!
#!/bin/bash
#Layout do arquivo NOME;CPF;EMAIL
if [ "$1" == "" ]; then
echo "[+] Nao foi passado arquivo de e-mails."
exit
fi
rm emailsvalidos.txt 2>/dev/null
touch emailsvalidos.txt
regex="[a-z0-9_.%+-]+@[a-z0-9.-]+\.[a-z]{2,}"
echo "[+] Aguarde capturando e-mails validos."
echo -e "CLIENTE;CPF;EMAIL;DOMINIO\r" >> emailsvalidos.txt
qtdreg="$(($(wc -l "$1" | cut -d " " -f1)/40 | bc))"
for l in $(cat "$1" | tr " " "$" | tr "\n" " ");do
let count++
cliente="$(echo "$l" | cut -d ";" -f2 | tr "$" " ")"
cpf="$(echo "$l" | cut -d ";" -f1)"
email="$(echo "$l" | cut -d ";" -f3 | tr "[A-Z]" "[a-z]" | tr -d "\r")"
dominio="$(echo "$email" | cut -d "@" -f2)"
qtd="$(echo -n $email | tr "@" "\n" | wc -l)"
if [[ "$email" =~ $regex ]] && [ "$qtd" -eq 1 ]; then
echo -e "$cliente;$cpf;$email;$dominio\r" >> emailsvalidos.txt
fi
if [ "$count" -gt "$qtdreg" ]; then
echo -n "#"
let count=0
fi
done
unix2dos emailsvalidos.txt 2>/dev/null
echo
Mata usuários do FreeNX Server
Usando dialog para adiciona usuários no squid
Instalar NetBox (container) em CentOS 7
Nenhum comentário foi encontrado.
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Quer auto-organizar janelas (tiling) no seu Linux? Veja como no Plasma 6 e no Gnome
Copiando caminho atual do terminal direto para o clipboard do teclado
Script de montagem de chroot automatica
Eaí? Já programou no windows? (3)
Instalar Dual Boot, Linux+Windows. (9)









