blob: 42842cebd8a1e04f0667cc142a301513e471af8a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
= Nome de arquivo com dia e hora de forma simplificada
:updatedat: 2025-04-30
:categories: shell
Quando vou escrever um artigo no Jekyll ou criar um arquivo de log com a data no nome, eu normalmente engasgo para achar um jeito direto de fazer isso. Há uma solução simples: `date -I`.
[source, sh]
----
./meu-programa.sh > meu-programa.$(date -I).log
cp template-de-artigo.md _posts/$(date -I)-slug-do-artigo.md
----
Usar essa ferramenta padrão do GNU/Linux permite que você simplesmente escreva `touch $(date -I).md` para criar um arquivo `2020-08-12.md`.
Eu sempre tinha que para para reler o `man date` ou buscar na internet de novo e de novo como fazer isso, e depois de sempre chegar no mesmo resultado ficou claro para mim que tanto `date -I` quanto `date -Is` (`s` de segundos) são as respostas que eu estou procurando 95% do tempo:
[source, sh]
----
# dentro do meu programa.sh
echo "Programa começou em $(date -Is)"
# saída é:
# Programa começou em 2020-08-12T09:15:16-03:00
----
Ambos os formatos de data são hierárquicos, com intervalos de tempo maior à esquerda. Isso significa que você pode facilmente ordená-los (e até usar TAB para completar) sem esforço ou ferramenta extra.
// Generated from po4a(1).
|