Annotation of researchv10dc/man/manb/getdate.3, revision 1.1

1.1     ! root        1: .TH GETDATE 3 unc
        !             2: .SH NAME
        !             3: getdate \- convert time and date from ASCII
        !             4: .SH SYNOPSIS
        !             5: .B #include <sys/types.h>
        !             6: .br
        !             7: .B #include <sys/timeb.h>
        !             8: .PP
        !             9: .B time_t getdate(buf, now)
        !            10: .br
        !            11: .B char *buf;
        !            12: .br
        !            13: struct timeb *now;
        !            14: .SH DESCRIPTION
        !            15: .I Getdate
        !            16: converts common time specifications to standard UNIX
        !            17: format.
        !            18: .I Buf
        !            19: is a character string containing the
        !            20: time and date.
        !            21: .I Now
        !            22: is the assumed current time (used for relative
        !            23: specifications); if the pointer is null (0)
        !            24: .I ftime
        !            25: (see
        !            26: .IR time (2))
        !            27: is used to obtain the current time and timezone.
        !            28: .PP
        !            29: The character string consists of 0 or more specifications of the following
        !            30: form:
        !            31: .TP
        !            32: tod
        !            33: A
        !            34: .I tod
        !            35: is a time of day, in the form
        !            36: .IR hh : mm [: ss ]
        !            37: (or
        !            38: .IR hhmm )
        !            39: .RI [ meridian ]
        !            40: .RI [ zone ].
        !            41: If no meridian \-
        !            42: .B am
        !            43: or
        !            44: .B pm
        !            45: \- is specified, a 24-hour clock is used.
        !            46: A
        !            47: .I tod
        !            48: may be specified as just
        !            49: .I hh
        !            50: followed by a
        !            51: .IR meridian.
        !            52: .TP
        !            53: date
        !            54: A
        !            55: .I date
        !            56: is a specific month and day, and possibly a year.  Acceptable formats are
        !            57: .IR mm/dd [ /yy ]
        !            58: and
        !            59: .IR "monthname dd" "[, " yy ]
        !            60: If omitted, the year defaults to the
        !            61: current year; if a year is specified
        !            62: as a number less than 100, 1900 is added.
        !            63: If a number not followed by a day or relative time unit occurs, it will
        !            64: be interpreted as a year if a
        !            65: .IR tod ,
        !            66: .IR monthname ,
        !            67: and
        !            68: .I dd
        !            69: have already been specified; otherwise, it will be treated as a
        !            70: .IR tod .
        !            71: This rule allows the output from
        !            72: .IR date (1)
        !            73: or
        !            74: .IR ctime (3)
        !            75: to be passed as input to
        !            76: .IR getdate .
        !            77: .TP .75i
        !            78: day
        !            79: A
        !            80: .I day
        !            81: of the week may be specified; the current day will be used if appropriate.
        !            82: A
        !            83: .I day
        !            84: may be preceeded by a
        !            85: .IR number,
        !            86: indicating which instance of that day is desired; the default is
        !            87: .BR 1 .
        !            88: Negative
        !            89: .I numbers
        !            90: indicate times past.  Some symbolic
        !            91: .I numbers
        !            92: are accepted:
        !            93: .BR last ,
        !            94: .BR next ,
        !            95: and the ordinals
        !            96: .B first
        !            97: through
        !            98: .B twelfth
        !            99: .RB ( second
        !           100: is ambiguous, and is not accepted as an ordinal number).
        !           101: The symbolic number
        !           102: .B next
        !           103: is equivalent to
        !           104: .BR 2 ;
        !           105: thus,
        !           106: .I "next monday"
        !           107: refers not to the immediately coming Monday, but to the one a week later.
        !           108: .TP .75i
        !           109: relative time
        !           110: Specifications relative to the current time are also accepted.  
        !           111: The format is
        !           112: .RI [ number "] " unit ;
        !           113: acceptable units are
        !           114: .BR year ,
        !           115: .BR month ,
        !           116: .BR fortnight ,
        !           117: .BR week ,
        !           118: .BR day ,
        !           119: .BR hour ,
        !           120: .BR minute ,
        !           121: and
        !           122: .BR second .
        !           123: .PP
        !           124: The actual date is formed as follows:  first, any absolute date and/or time
        !           125: is processed and converted.  Using that time as the base, day-of-week
        !           126: specifications are added; last, relative specifications are used.  If a
        !           127: date or day is specified, and no absolute or relative time is given, midnight
        !           128: is used.
        !           129: Finally, a correction is applied so that the correct hour of the day is
        !           130: produced after allowing for daylight savings time differences.
        !           131: .PP
        !           132: .I Getdate
        !           133: accepts most common abbreviations for days, months, etc.; in particular,
        !           134: it will recognize them with upper or lower case first letter, and will
        !           135: recognize three-letter abbreviations for any of them, with or without
        !           136: a trailing period.  Units, such as
        !           137: .BR week s,
        !           138: may be specified in the singular or plural.  Timezone and meridian
        !           139: values may be in upper or lower case, and with or without periods.
        !           140: .SH FILES
        !           141: /usr/lib/libu.a
        !           142: .SH "SEE ALSO"
        !           143: ctime(3), time(2)
        !           144: .SH AUTHOR
        !           145: Steven M. Bellovin (unc!smb)
        !           146: .br
        !           147: Dept. of Computer Science
        !           148: .br
        !           149: University of North Carolina at Chapel Hill
        !           150: .SH BUGS
        !           151: Because
        !           152: .IR yacc (1)
        !           153: is used to parse the date,
        !           154: .I getdate
        !           155: cannot be used a subroutine to any program that also needs
        !           156: .IR yacc .
        !           157: .br
        !           158: The grammar and scanner are rather primitive; certain desirable and
        !           159: unambiguous constructions are not accepted.  Worse yet, the meaning of
        !           160: some legal phrases is not what is expected;
        !           161: .I next week
        !           162: is identical to
        !           163: .IR "2 weeks" .
        !           164: .br
        !           165: The daylight savings time correction is not perfect, and can get confused
        !           166: if handed times between midnight and 2:00 am on the days that the
        !           167: reckoning changes.
        !           168: .br
        !           169: Because
        !           170: .IR localtime (2)
        !           171: accepts an old-style time format without zone information, attempting
        !           172: to pass
        !           173: .I getdate
        !           174: a current time containing a different zone will probably fail.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.