У мене є файл, що містить дати епохи, які мені потрібно перетворити на людину, читабельну. Я вже знаю, як зробити перетворення дати, наприклад:
[server01 ~]$ date -d@1472200700
Fri 26 Aug 09:38:20 BST 2016
..але я намагаюся зрозуміти, як sed
пройти по файлу та конвертувати всі записи. Формат файлу виглядає приблизно так:
#1472047795
ll /data/holding/email
#1472047906
cat /etc/rsyslog.conf
#1472048038
ll /data/holding/web
date -d
не переносимо, щоб сказати Solaris ... Я припускаю, що це в системі з переважно інструментами GNU? (GNU AWK / Perl, як правило, є більш портативними методами боротьби з перетвореннями дат). gawk '{ if ($0 ~ /^#[0-9]*$/) {print strftime("%c",substr($0,2)); } else {print} }' < file
( strftime
здається, не портативний ...)
HISTTIMEFORMAT
змінної оболонки, щоб контролювати формат під час написання.