[source] validar_lista_cpf.pl

postagem de conteudo sobre levantamento de informação
Post Reply
User avatar
Kodo no Kami
Admin
Admin
Posts: 725
Joined: Fri Jan 02, 2015 1:56 pm
Contact:

[source] validar_lista_cpf.pl

Post by Kodo no Kami » Fri Sep 21, 2018 5:30 pm

um simples script para validar uma lista de cpf em um arquivo

Code: Select all

#!/usr/bin/perl
#coder: kodo no kami
#EOF Intelligence Group
#formato no arquivo: CPF|NOME
#sintaxe: script.pl <ARQUIVO>
#descrição: valida uma lista de cpfs

open(KARQ,"<" . $ARGV[0]);
open(KARQ_S,">" . $ARGV[0] . ".csv");

while($lin = readline(KARQ)){
    @kodo = $lin =~ /(.*?)\|(.*)/;
    if(($kodo[0] eq "000.000.000-00") || ($kodo[0] eq "111.111.111-11") || ($kodo[0] eq "222.222.222-22") || ($kodo[0] eq "333.333.333-33") 
    || ($kodo[0] eq "444.444.444-44") || ($kodo[0] eq "555.555.555-55") || ($kodo[0] eq "666.666.666-66") || ($kodo[0] eq "777.777.777-77")
    || ($kodo[0] eq "888.888.888-88") || ($kodo[0] eq "999.999.999-99")
    ){
    }
    elsif(kodo_cpf_validar($kodo[0])){
        print KARQ_S $kodo[0] . "|" . $kodo[1] . "\n";
    }
}

close(KARQ);
close(KARQ_S);

sub kodo_cpf_validar{
    $cpf = $_[0];
    $n1 = substr($cpf,0,1);
    $n2 = substr($cpf,1,1);
    $n3 = substr($cpf,2,1);
    $n4 = substr($cpf,4,1);
    $n5 = substr($cpf,5,1);
    $n6 = substr($cpf,6,1);
    $n7 = substr($cpf,8,1);
    $n8 = substr($cpf,9,1);
    $n9 = substr($cpf,10,1);
    $n10c = substr($cpf,12,1);
    $n11c = substr($cpf,13,1);
    $n10 = 0;
    $n11 = 0;
    $resu = ($n1 * 10) + ($n2 * 9) + ($n3 * 8) + ($n4 * 7) + ($n5 * 6) + ($n6 * 5) + ($n7 * 4) + ($n8 * 3) + ($n9 * 2) ;
    $resu = $resu % 11;
    if($resu < 2){
        $n10 = 0;
    }
    else{
        $n10 = 11 - $resu;
    }
    $resu = ($n1 * 11) + ($n2 * 10) + ($n3 * 9) + ($n4 * 8) + ($n5 * 7) + ($n6 * 6) + ($n7 * 5) + ($n8 * 4) + ($n9 * 3) + ($n10 * 2);
    $resu = int($resu % 11);
    if($resu < 2){
        $n11 = 0;
    }
    else{
        $n11 = (11 - $resu);
    }
    if($n10c eq $n10){
        if($n11c eq $n11){
            return 1;
        }
        else{
            return 0;
        }
    }
    else{
        return 0;
    }
    return 0;
}
Image

que desagradavel ~ mirai kuriyama

Post Reply

Return to “Fingerprint / Footprint”