В OS X мені подобається, що моя дата повинна бути у форматі YYYY-MM-DD HH:MM
у вихідному файлі.
Отже, щоб вказати файл, який я б використав:
stat -f "%Sm" -t "%Y-%m-%d %H:%M" [filename]
Якщо я хочу запустити його на різних файлах, я можу зробити щось подібне:
#!/usr/bin/env bash
for i in /var/log/*.out; do
stat -f "%Sm" -t "%Y-%m-%d %H:%M" "$i"
done
Цей приклад виведе друк востаннє, коли я виконував sudo periodic daily weekly monthly
команду, коли вона посилається на файли журналів.
Щоб додати назви файлів під кожною датою, я б замість цього запустив наступне:
#!/usr/bin/env bash
for i in /var/log/*.out; do
stat -f "%Sm" -t "%Y-%m-%d %H:%M" "$i"
echo "$i"
done
Вихід був би таким:
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
На жаль, я не знаю, як запобігти розриву рядка та зберегти ім’я файлу, додане до кінця дати, не додаючи до рядка більше рядків.
PS - Я використовую, #!/usr/bin/env bash
оскільки я користувач Python щодня, і bash
в мене замість системи встановлені різні версії#!/bin/bash