O comando date é uma das ferramentas mais simples e úteis do terminal Linux. Ele serve para exibir, formatar e até definir a data e hora do sistema. Neste post, vamos ver os usos mais comuns no dia a dia.
Uso básico
Sem nenhum parâmetro, o date simplesmente mostra a data e hora atuais do sistema:
date
Saída de exemplo:
sáb 16 ago 2026 14:32:07 -03
Formatando a saída
Você pode controlar exatamente como a data é exibida usando o parâmetro + seguido de códigos de formatação:
date "+%d/%m/%Y %H:%M:%S"
Saída:
16/08/2026 14:32:07
Principais códigos de formatação
| Código | Significado | Exemplo |
|---|---|---|
%d | Dia do mês (01-31) | 16 |
%m | Mês (01-12) | 08 |
%Y | Ano com 4 dígitos | 2026 |
%y | Ano com 2 dígitos | 26 |
%H | Hora (00-23) | 14 |
%M | Minuto (00-59) | 32 |
%S | Segundo (00-59) | 07 |
%A | Dia da semana completo | sábado |
%B | Nome do mês completo | agosto |
Trabalhando com datas relativas
O date também permite calcular datas passadas ou futuras usando a opção -d (ou --date):
date -d "yesterday"
date -d "next monday"
date -d "3 days ago"
date -d "+1 month"
Exemplos de expressões relativas aceitas
| Expressão | Resultado |
|---|---|
tomorrow | Data de amanhã |
yesterday | Data de ontem |
next friday | Próxima sexta-feira |
-2 weeks | Duas semanas atrás |
+1 year | Um ano a partir de hoje |
Convertendo timestamp Unix
Se você já trabalhou com logs de sistema ou APIs, provavelmente já viu datas em timestamp Unix (segundos desde 1º de janeiro de 1970). O date converte isso facilmente:
date -d @1755349200
E para fazer o caminho inverso (converter uma data para timestamp):
date -d "2026-08-16 14:00:00" +%s
Usando em scripts
Um uso muito comum é gerar nomes de arquivo com data, como em rotinas de backup:
backup_$(date +%Y%m%d_%H%M%S).tar.gz
Isso gera algo como backup_20260816_143207.tar.gz, evitando sobrescrever backups antigos.
Resumo rápido
| Comando | O que faz |
|---|---|
date | Mostra data e hora atual |
date "+%d/%m/%Y" | Formata a saída |
date -d "tomorrow" | Calcula data relativa |
date -d @TIMESTAMP | Converte timestamp Unix para data |
date -d "DATA" +%s | Converte data para timestamp Unix |
O date parece simples à primeira vista, mas é uma das ferramentas mais versáteis para quem escreve scripts em Bash ou precisa lidar com datas no terminal no dia a dia.
