No OS X, eu gosto da minha data no formato de YYYY-MM-DD HH:MM
saída do arquivo.
Então, para especificar um arquivo, eu usaria:
stat -f "%Sm" -t "%Y-%m-%d %H:%M" [filename]
Se eu quiser executá-lo em vários arquivos, posso fazer algo assim:
#!/usr/bin/env bash
for i in /var/log/*.out; do
stat -f "%Sm" -t "%Y-%m-%d %H:%M" "$i"
done
Este exemplo será impresso na última vez em que executei o sudo periodic daily weekly monthly
comando, que faz referência aos arquivos de log.
Para adicionar os nomes de arquivos em cada data, execute o seguinte:
#!/usr/bin/env bash
for i in /var/log/*.out; do
stat -f "%Sm" -t "%Y-%m-%d %H:%M" "$i"
echo "$i"
done
A saída seria a seguinte:
2016-40-01 16:40
/var/log/daily.out
2016-40-01 16:40
/var/log/monthly.out
2016-40-01 16:40
/var/log/weekly.out
Infelizmente, não tenho certeza de como impedir a quebra de linha e manter o nome do arquivo anexado ao final da data sem adicionar mais linhas ao script.
PS - Eu uso #!/usr/bin/env bash
como usuário Python por dia e tenho versões diferentes do bash
instaladas no meu sistema em vez de#!/bin/bash