В 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