parsedate(3) - NetBSD Manual Pages

Command: Section: Arch: Collection:  
PARSEDATE(3)            NetBSD Library Functions Manual           PARSEDATE(3)


NAME
parsedate -- date parsing function
LIBRARY
System Utilities Library (libutil, -lutil)
SYNOPSIS
#include <util.h> time_t parsedate(const char *datestr, const time_t *time, const int *tzoff);
DESCRIPTION
The parsedate function parses a datetime from datestr described in english relative to an optional time point and an optional timezone off- set in seconds specified in tzoff. If either time or tzoff are NULL, then the current time and timezone offset are used. The datestr is a sequence of white-space separated items. The white- space is optional the concatenated items are not ambiguous. An empty datestr is equivalent to midnight today (the beginning of this day). The following words have the indicated numeric meanings: last = -1, this = 0, first or next 1, second is unused so that it is not confused with ``seconds'', third = 3, fourth = 4, fifth = 5, sixth = 6, seventh = 7, eighth = 8, ninth = 9, tenth = 10, eleventh = 11, twelfth = 12. The following words are recognized in English only: AM, PM, a.m., p.m. The months: january, february, march, april, may, june, july, august, september, sept, october, november, december, The days of the week: sunday, monday, tuesday, tues, wednesday, wednes, thursday, thur, thurs, friday, saturday. Time units: year, month, fortnight, week, day, hour, minute, min, second, sec, tomorrow, yesterday. Timezone names: gmt, ut, utc, wet, bst, wat, at, ast, adt, est, edt, cst, cdt, mst, mdt, pst, pdt, yst, ydt, hst, hdt, cat, ahst, nt, idlw, cet, met, mewt, mest, swt, sst, fwt, fst, eet, bt, zp4, zp5, zp6, wast, wadt, cct, jst, east, eadt, gst, nzt, nzst, nzdt, idle. A variety of unambiguous dates are recognized: 69-09-10 For years between 69-99 we assume 1900+ and for years between 0-68 we assume 2000+. 2006-11-17 An ISO-8601 date. 10/1/2000 October 10, 2000; the common US format. 20 Jun 1994 23jun2001 1-sep-06 Other common abbreviations. 1/11 the year can be omitted As well as times: 10:01 10:12pm 12:11:01.000012 12:21-0500 Relative items are also supported: -1 month last friday one week ago this thursday next sunday +2 years Seconds since epoch (also known as UNIX time) are also supported: @735275209 Tue Apr 20 03:06:49 UTC 1993
RETURN VALUES
parsedate() returns the number of seconds passed since the Epoch, or -1 if the date could not be parsed properly.
SEE ALSO
date(1), eeprom(8)
BUGS
The parsedate function is not re-entrant or thread-safe.
HISTORY
The parser used in parsedate() was originally written by Steven M. Bellovin while at the University of North Carolina at Chapel Hill. It was later tweaked by a couple of people on Usenet. Completely overhauled by Rich $alz and Jim Berets in August, 1990. The parsedate() function first appeared in NetBSD 4.0. NetBSD 5.2 Aug 28, 2010 NetBSD 5.2
Powered by man-cgi (2024-03-20). Maintained for NetBSD by Kimmo Suominen. Based on man-cgi by Panagiotis Christias.