flysmog.pages.dev

Como verificar CPF usando ferramentas nativas do macOS?

Validar um CPF manualmente pode ser tedioso e propenso a erros. Com as ferramentas nativas do macOS, como o Terminal e scripts em Shell, você pode automatizar esse processo em segundos, garantindo precisão e eficiência sem depender de softwares de terceiros.

Pré-requisitos

Criar script para validação de CPF

Abra o Terminal e crie um arquivo de script Shell para implementar o algoritmo de validação do CPF. O script receberá um CPF como argumento e retornará se ele é válido ou não.

#!/bin/bash

cpf=$1
cpf_clean=$(echo "$cpf" | tr -d '[:space:].-')

if [[ ${#cpf_clean} -ne 11 || "$cpf_clean" =~ [^0-9] ]]; then
    echo "CPF inválido: formato incorreto"
    exit 1
fi

# Verificar se todos os dígitos são iguais
if [[ $(echo "$cpf_clean" | grep -E '^([0-9])\1+$') ]]; then
    echo "CPF inválido: dígitos repetidos"
    exit 1
fi

# Calcular primeiro dígito verificador
sum=0
for i in {10..2}; do
    sum=$((sum + ${cpf_clean:10-$i:1} * i))
done
digit1=$((sum % 11))
digit1=$((digit1 < 2 ? 0 : 11 - digit1))

# Calcular segundo dígito verificador
sum=0
for i in {11..2}; do
    sum=$((sum + ${cpf_clean:11-$i:1} * i))
done
digit2=$((sum % 11))
digit2=$((digit2 < 2 ? 0 : 11 - digit2))

if [[ ${cpf_clean:9:1} -eq $digit1 && ${cpf_clean:10:1} -eq $digit2 ]]; then
    echo "CPF válido"
else
    echo "CPF inválido: dígitos verificadores incorretos"
fi

Tornar o script executável

Após salvar o arquivo (por exemplo, como validar_cpf.sh), torne-o executável com o comando chmod.

chmod +x validar_cpf.sh

Executar a validação

Use o script passando o CPF como argumento. O script removerá automaticamente pontos e traços, se presentes.

./validar_cpf.sh 123.456.789-09

Exemplo Prático

CPF de Entrada Resultado
123.456.789-09 CPF inválido: dígitos verificadores incorretos
529.982.247-25 CPF válido
111.111.111-11 CPF inválido: dígitos repetidos

Conclusão

Com este script Shell nativo do macOS, você automatiza a validação de CPF em segundos, eliminando erros manuais e garantindo conformidade com o algoritmo oficial. Basta executar o comando e obter o resultado instantaneamente.