BASH – Calcular el digito verificador de un rut chileno.

#!/bin/bash
  rut=12345678
  div=1
  serie=2
  sum=0
  verificador=0
    for((a=0;a<8;a++))
       do
               temp=$((rut/div))
               div=$(($div*10))
               if [ $serie = "8" ]; then
                       serie=2
               fi
               sum=$(((((($temp-((((rut/div))*10))))*serie))+$sum))
               serie=$(($serie+1))
       done
       verificador=$((11-(($sum%11))))
       if [ $verificador = "10" ]; then
           verificador=k
       fi
       if [ $verificador = "11" ];then
           verificador=0
       fi
  echo "rut completo: "$rut"-"$verificador
Esta entrada fue publicada en Unix - Linux. Guarda el enlace permanente.

Deja una respuesta

Tu dirección de correo electrónico no será publicada.