Я хотел бы иметь возможность предоставлять метки времени последнего изменения для моих постов и страниц Jekyll с помощью скрипта оболочки. Проблема в том, что я не знаю, как автоматически генерировать приемлемую метку времени. Ближайшее, к чему я пришел, чтобы получить приемлемую метку времени, — это использовать эту команду:
stat <FILE> | sed -n -e 's/Modify:\s//p'
что возвращает для моего файла glossary.md:
2016-02-12 09:37:55.393936224 +1000
это почти тот формат, который мне нужен. Единственная проблема в том, что я хотел бы удалить .393936224
из него десятичную часть. Я думал, что смогу сделать это сам, используя , sed
но все мои попытки потерпели неудачу. Большинство моих попыток заключались в записи этого вывода в текстовый файл, а затем использовании sed для этого текстового файла, чтобы удалить десятичную часть. Я бы предпочел, чтобы любой ваш ответ не записывал вывод этого в текстовый файл, хотя я хотел бы, чтобы вывод вашего решения можно было записать в переменную. например, если переменная это L
:
L=$(stat <FILE> | sed -n -e 's/Modify:\s//p' | sed ...)
где | sed ...
можно заменить на любое ваше решение этой проблемы.
решение1
date
(по крайней мере, в распространенной сегодня реализации GNU) можно напрямую получить время модификации файла:
> date -r ~/.bashrc +'%Y-%m-%d %H:%M:%S %z'
2015-11-10 18:50:49 +0100
(или любой другой формат по вашему желанию)