ragfica.pages.dev

Como formatar CPF para exibição em terminal?

Formatar um CPF para exibição em terminal pode parecer trivial, mas garantir consistência e legibilidade é essencial, especialmente ao lidar com grandes volumes de dados. Este método é o mais eficaz porque combina simplicidade com precisão, permitindo que você apresente CPFs de forma padronizada em qualquer ambiente de linha de comando.

Pré-requisitos

Usando comando sed no terminal

O comando sed é uma ferramenta poderosa para manipulação de texto. Para formatar CPFs diretamente no terminal, você pode usar o seguinte comando:

sed -E 's/([0-9]{3})([0-9]{3})([0-9]{3})([0-9]{2})/\1.\2.\3-\4/' arquivo.txt

Este comando lê cada linha do arquivo arquivo.txt, identifica o padrão de 11 dígitos e insere os pontos e hífen conforme a máscara padrão de CPF (XXX.XXX.XXX-XX).

Usando script Python para automação

Se você precisa processar vários CPFs ou integrar esta funcionalidade em um fluxo maior, um script Python é a solução ideal. O código abaixo lê CPFs de um arquivo e imprime-os formatados:

import re

def formatar_cpf(cpf):
    cpf = re.sub(r'\D', '', cpf)  # Remove caracteres não numéricos
    return f"{cpf[:3]}.{cpf[3:6]}.{cpf[6:9]}-{cpf[9:]}"

with open('cpfs.txt', 'r') as arquivo:
    for linha in arquivo:
        cpf_formatado = formatar_cpf(linha.strip())
        print(cpf_formatado)

Este script é flexível e pode ser facilmente adaptado para ler de outras fontes ou escrever em arquivos de saída.

Exemplo Prático

CPF sem formatação CPF formatado
12345678901 123.456.789-01
98765432100 987.654.321-00
11122233344 111.222.333-44

Conclusão

Com estes métodos, você pode formatar CPFs para exibição em terminal de forma rápida e confiável, eliminando a necessidade de intervenção manual e garantindo consistência em seus dados. A escolha entre sed e Python depende do contexto: para tarefas simples e pontuais, sed é suficiente; para automação e processamento em larga escala, um script Python oferece maior flexibilidade.