Formatar datas em arquivos no Linux pode ser uma tarefa repetitiva e propensa a erros manuais. Felizmente, o comando date e ferramentas como awk e sed permitem automatizar esse processo de forma rápida e precisa, garantindo consistência nos dados.
O comando date permite converter datas entre formatos. Para converter uma data específica, use:
date -d "2024-03-15" +"%d/%m/%Y"
Este comando converte a data "2024-03-15" para o formato "15/03/2024".
Para processar datas em um arquivo, o awk é ideal. Suponha que seu arquivo contenha datas no formato "YYYY-MM-DD" e você queira convertê-las para "DD/MM/YYYY":
awk -F'-' '{print $3"/"$2"/"$1}' arquivo.txt
Este comando divide cada linha pelo caractere '-' e reordena os campos para o novo formato.
Se precisar substituir datas em um arquivo diretamente, use o sed:
sed -i 's/\([0-9]\{4\}\)-\([0-9]\{2\}\)-\([0-9]\{2\}\)/\3\/\2\/\1/g' arquivo.txt
Esta expressão regular captura datas no formato "YYYY-MM-DD" e as substitui por "DD/MM/YYYY".
| Entrada (arquivo.txt) | Comando | Saída |
|---|---|---|
| 2024-03-15 | date -d "2024-03-15" +"%d/%m/%Y" | 15/03/2024 |
| 2024-03-15 | awk -F'-' '{print $3"/"$2"/"$1}' arquivo.txt | 15/03/2024 |
| 2024-03-15 | sed -i 's/\([0-9]\{4\}\)-\([0-9]\{2\}\)-\([0-9]\{2\}\)/\3\/\2\/\1/g' arquivo.txt | 15/03/2024 |
Com estes comandos, você pode formatar datas em arquivos no Linux de forma rápida e sem erros. A automação via terminal não só economiza tempo, mas também garante que todos os dados sigam o mesmo padrão, facilitando análises e processamentos futuros.