shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Re: Validação CPF/CNPJ em shell-script


From: Valtoir
Subject: Re: [shell-script] Re: Validação CPF/CNPJ em shell-script
Date: Mon, 4 Aug 2003 10:58:31 -0300

Consegui melhorar um pouco o código. Troquei o nome da variáveil "x" (agora
"fator") prá tornar mais o código mais inteligível, eliminei a variável "y"
(menos cálculo) e de quebra emagreci o script em uma linha. Ficou bem mais
simples dessa maneira:

--------------- 8< corte aqui 8< --------------
#!/bin/bash
## shell script em bash2 para validação de CIC
### escrito por Valtoir S. Jardim e << melhore o código, coloque seu nome
aqui e me envie uma cópia>>  ;-)
#### address@hidden
##### feito em 2003-08-01, atualizado em 2003-08-04
for digpos in 10 11; do
   matriz=(`seq $digpos 2`)
   dig=0
   pos=1
   for fator in ${matriz[*]}; do
      let dig=$dig+`echo $1 | cut -c$pos`*$fator
      let pos=$pos+1
   done
   dig=`echo 11-$dig%11 | bc`
   if [ $dig -ge 10 ]; then
      dig=0
   fi
   if [ $dig -ne `echo $1 | cut -c$digpos` ]; then
      echo -e "\nCIC inválido\n"
      exit
   fi
done
echo -e "\nCIC válido\n"
--------------- >8 --corte aqui -- >8--------------

Essas alterações também vão facilitar a adaptação do código para a checagem
de cnpj. Depois do rango vou dar um jeito nisso.

Alguém sabe se dá para melhorar a linha "let pos=$pos+1"?

T+

Valtoir




reply via email to

[Prev in Thread] Current Thread [Next in Thread]