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.
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).
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.
| CPF sem formatação | CPF formatado |
|---|---|
| 12345678901 | 123.456.789-01 |
| 98765432100 | 987.654.321-00 |
| 11122233344 | 111.222.333-44 |
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.