Как получить формат ISO8601 секунд из "даты" в busybox?
Без адекватных примеров я продолжаю ходить кругами, чтобы распечатать "секундную" версию iso8601 с "датой". Пожалуйста, посмотрите на помощь, которая предоставляется с данными о busybox 1.22.1. Я не могу понять синтаксис требуется. Примеры говорят громче, чем слова из моего опыта, и я не нашел ничего полезного в Интернете.
Вот что я попробовал:
➤ date -I=seconds
➤ date -I SPEC='seconds'
➤ date -I seconds
➤ date -I='seconds'
➤ date -I 'seconds'
➤ date -I['seconds']
➤ date -I TIMESPEC='seconds'
➤ date -I TIMESPEC=seconds
Примечание. Я пытался использовать версию даты в Ubuntu и смог выяснить, как получить формат даты iso8601= секунд, но не в busybox...
Вот что показывает справка по дате для Busybox 1.22.1:
BusyBox v1.22.1 (2014-09-26 07:33:17 CEST) multi-call binary.
Usage: date [OPTIONS] [+FMT] [TIME]
Display time (using +FMT), or set time
[-s,--set] TIME Set time to TIME
-u,--utc Work in UTC (don't convert to local time)
-R,--rfc-2822 Output RFC-2822 compliant date string
-I[SPEC] Output ISO-8601 compliant date string
SPEC='date' (default) for date only,
'hours', 'minutes', or 'seconds' for date and
time to the indicated precision
-r,--reference FILE Display last modification time of FILE
-d,--date TIME Display TIME, not 'now'
-D FMT Use FMT for -d TIME conversion
1 ответ
Документация (т. Е. Помощь) вводит в заблуждение и не приводит к приятному восприятию простой функциональности. Вместо этого документация должна быть переписана так, чтобы примеры ввода командной строки также были частью помощи (по крайней мере, чтобы синтаксис был выключен). В любом случае я ответил на свой вопрос.
Главная и очень тонкая разница в одной из моих попыток, которую мне не хватало:
➤ date -I 'seconds'
date: invalid date 'seconds'
Был от волос Нужно убрать пробел:
➤ date -I'seconds'
2017-07-09T17:29:54-0400
Теперь с занятой датой все в порядке.