Validar e-mails em arquivo CSV
Publicado por Christian Martorano (última atualização em 04/07/2018)
[ Hits: 2.309 ]
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
Adicionando Chaves de Repositórios Facilmente
Ajuste de data e hora automática
arredonda - arredondando valores decimais quebrados
Slackware 14.2 Pós-Instalação - Idioma, Teclado, Otimizações
Nenhum coment�rio foi encontrado.
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Realizar overclock no Miyoo Mini (plus ou normal)
Otimização de memória para máquinas modestas
Direcionar uma URL para Outra No Mikrotik (0)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (1)