Linux repositories inspector


INN 2.6.2


'InterNetNews' news server


Complete open source Usenet system. De facto standard for handling news routing, news spool and serving the spool to customers.


convdate - Convert to/from RFC 5322 dates and seconds since epoch


convdate [-dhl] [-c | -n | -s] [date ...]


convdate translates the date/time strings given on the command line, outputting the results one to a line. The input can either be a date in RFC 5322 format (accepting the variations on that format that innd(8) is willing to accept), or the number of seconds since epoch (if -c is given). The output is either ctime(3) results, the number of seconds since epoch, or a Usenet Date: header, depending on the options given.
If date is not given, convdate outputs the current date.


-c Each argument is taken to be the number of seconds since epoch (a time_t) rather than a date.
-d Output a valid Usenet Date: header instead of the results of ctime(3) for each date given on the command line. This is useful for testing the algorithm used to generate Date: headers for local posts. Normally, the date will be in UTC, but see the -l option.
-h Print usage information and exit.
-l Only makes sense in combination with -d. If given, Date: headers generated will use the local time zone instead of UTC.
-n Rather than outputting the results of ctime(3) or a Date: header, output each date given as the number of seconds since epoch (a time_t). This option doesn’t make sense in combination with -d.
-s Pass each given date to the RFC 5322 date parser and print the results of ctime(3) (or a Date: header if -d is given). This is the default behavior.


Most of these examples are taken, with modifications from the original man page dating from 1991 and were run in the EST/EDT time zone.

    % convdate 10 Feb 1991 10:00:00 -0500
    Sun Feb 10 10:00:00 1991

    % convdate 13 Dec 91 12:00 EST 04 May 1990 0:0:0
    Fri Dec 13 12:00:00 1991
    Fri May  4 00:00:00 1990

    % convdate -n 10 feb 1991 10:00 4 May 90 12:00

    % convdate -c 666198000
    Sun Feb 10 10:00:00 1991
ctime(3) results are in the local time zone. Compare to:

    % convdate -dc 666198000
    Sun, 10 Feb 1991 15:00:00 -0000 (UTC)

    % env TZ=PST8PDT convdate -dlc 666198000
    Sun, 10 Feb 1991 07:00:00 -0800 (PST)

    % env TZ=EST5EDT convdate -dlc 666198000
    Sun, 10 Feb 1991 10:00:00 -0500 (EST)
The system library functions generally use the environment variable TZ to determine (or at least override) the local time zone.


Written by Rich $alz <>, rewritten and updated by Russ Allbery <> for the -d and -l flags.
$Id: convdate.pod 9971 2015-12-10 20:30:10Z iulius $
⇧ Top