Date 如何从“获取ISO8601秒格式”;日期“;在busybox里?

Date 如何从“获取ISO8601秒格式”;日期“;在busybox里?,date,embedded-linux,iso8601,busybox,arago,Date,Embedded Linux,Iso8601,Busybox,Arago,由于没有足够的例子,我一直在兜圈子,以便在“日期”之前打印出iso8601的“秒”版本。请查看随busybox 1.22.1的日期提供的帮助。我似乎无法理解所需的语法。在我的经验中,例子胜于雄辩,我还没有在网上找到任何有用的东西 以下是我尝试过的: ➤ date -I=seconds ➤ date -I SPEC='seconds' ➤ date -I seconds ➤ date -I='seconds' ➤ date -I 'seconds' ➤ date -I['seconds'] ➤ d

由于没有足够的例子,我一直在兜圈子,以便在“日期”之前打印出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=seconds格式的日期,但在busybox中没有…

以下是date的帮助为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
文档(即帮助)令人费解,对于简单的功能来说并不能带来愉快的体验。相反,文档需要重新编写,这样示例命令行输入也可以作为帮助的一部分(至少可以理解语法)。无论如何,我回答了我自己的问题

在我的一次尝试中,我碰巧错过了主要的和非常微妙的差别:

➤ date -I 'seconds'
date: invalid date 'seconds'
他差一点就死了。它需要删除空间:

➤ date -I'seconds'
2017-07-09T17:29:54-0400

现在,busybox date很高兴。

请记住,作为命令一部分的busybox文档故意很小。他们正试图将软件包安装到一个非常小的尺寸中,其中一种方法是包含非常少的文档。不,我非常理解,但该工具的实现方式,一些额外的示例将有助于减少像我这样不熟悉busybox工具集的用户的困惑。这其中的一些东西可以使该工具更加用户友好,并且不会使软件包膨胀。