Manpage of STRFTIME
8.8 `strftime'--flexible calendar time formatter
You control the format of the output using the string at FORMAT.
`*FORMAT' can contain two kinds of specifications: text to be copied
literally into the formatted string, and time conversion
specifications. Time conversion specifications are two- and
three-character sequences beginning with ``%'' (use ``%%'' to include a
percent sign in the output). Each defined conversion specification
selects only the specified field(s) of calendar time data from `*TIMP',
and converts it to a string in one of the following ways:
`%a'
A three-letter abbreviation for the day of the week. [tm_wday]
`%A'
The full name for the day of the week, one of ``Sunday'',
``Monday'', ``Tuesday'', ``Wednesday'', ``Thursday'', ``Friday'',
or ``Saturday''. [tm_wday]
`%b'
A three-letter abbreviation for the month name. [tm_mon]
`%B'
The full name of the month, one of ``January'', ``February'',
``March'', ``April'', ``May'', ``June'', ``July'', ``August'',
``September'', ``October'', ``November'', ``December''. [tm_mon]
`%c'
A string representing the complete date and time, in the form
``"%a %b %e %H:%M:%S %Y"'' (example "Mon Apr 01 13:13:13 1992").
[tm_sec, tm_min, tm_hour, tm_mday, tm_mon, tm_year, tm_wday]
`%C'
The century, that is, the year divided by 100 then truncated. For
4-digit years, the result is zero-padded and exactly two
characters; but for other years, there may a negative sign or more
digits. In this way, ``%C%y'' is equivalent to ``%Y''. [tm_year]
`%d'
The day of the month, formatted with two digits (from ``01'' to
``31''). [tm_mday]
`%D'
A string representing the date, in the form ``"%m/%d/%y"''.
[tm_mday, tm_mon, tm_year]
`%e'
The day of the month, formatted with leading space if single digit
(from ``1'' to ``31''). [tm_mday]
`%E`x''
In some locales, the E modifier selects alternative
representations of certain modifiers `x'. But in the "C" locale
supported by newlib, it is ignored, and treated as %`x'.
`%F'
A string representing the ISO 8601:2000 date format, in the form
``"%Y-%m-%d"''. [tm_mday, tm_mon, tm_year]
`%g'
The last two digits of the week-based year, see specifier %G (from
``00'' to ``99''). [tm_year, tm_wday, tm_yday]
`%G'
The week-based year. In the ISO 8601:2000 calendar, week 1 of the
year includes January 4th, and begin on Mondays. Therefore, if
January 1st, 2nd, or 3rd falls on a Sunday, that day and earlier
belong to week 53 of the previous year; and if December 29th,
30th, or 31st falls on Monday, that day and later belong to week 1
of the next year. For consistency with %Y, it always has at least
four characters. Example: "%G" for Saturday 2nd January 1999
gives "1998", and for Tuesday 30th December 1997 gives "1998".
[tm_year, tm_wday, tm_yday]
`%h'
A three-letter abbreviation for the month name (synonym for "%b").
[tm_mon]
`%H'
The hour (on a 24-hour clock), formatted with two digits (from
``00'' to ``23''). [tm_hour]
`%I'
The hour (on a 12-hour clock), formatted with two digits (from
``01'' to ``12''). [tm_hour]
`%j'
The count of days in the year, formatted with three digits (from
``001'' to ``366''). [tm_yday]
`%k'
The hour (on a 24-hour clock), formatted with leading space if
single digit (from ``0'' to ``23''). Non-POSIX extension. [tm_hour]
`%l'
The hour (on a 12-hour clock), formatted with leading space if
single digit (from ``1'' to ``12''). Non-POSIX extension. [tm_hour]
`%m'
The month number, formatted with two digits (from ``01'' to
``12''). [tm_mon]
`%M'
The minute, formatted with two digits (from ``00'' to ``59'').
[tm_min]
`%n'
A newline character (``').
`%O`x''
In some locales, the O modifier selects alternative digit
characters for certain modifiers `x'. But in the "C" locale
supported by newlib, it is ignored, and treated as %`x'.
`%p'
Either ``AM'' or ``PM'' as appropriate. [tm_hour]
`%r'
The 12-hour time, to the second. Equivalent to "%I:%M:%S %p".
[tm_sec, tm_min, tm_hour]
`%R'
The 24-hour time, to the minute. Equivalent to "%H:%M". [tm_min,
tm_hour]
`%S'
The second, formatted with two digits (from ``00'' to ``60''). The
value 60 accounts for the occasional leap second. [tm_sec]
`%t'
A tab character (`` '').
`%T'
The 24-hour time, to the second. Equivalent to "%H:%M:%S".
[tm_sec, tm_min, tm_hour]
`%u'
The weekday as a number, 1-based from Monday (from ``1'' to
``7''). [tm_wday]
`%U'
The week number, where weeks start on Sunday, week 1 contains the
first Sunday in a year, and earlier days are in week 0. Formatted
with two digits (from ``00'' to ``53''). See also `%W'. [tm_wday,
tm_yday]
`%V'
The week number, where weeks start on Monday, week 1 contains
January 4th, and earlier days are in the previous year. Formatted
with two digits (from ``01'' to ``53''). See also `%G'. [tm_year,
tm_wday, tm_yday]
`%w'
The weekday as a number, 0-based from Sunday (from ``0'' to ``6'').
[tm_wday]
`%W'
The week number, where weeks start on Monday, week 1 contains the
first Monday in a year, and earlier days are in week 0. Formatted
with two digits (from ``00'' to ``53''). [tm_wday, tm_yday]
`%x'
A string representing the complete date, equivalent to "%m/%d/%y".
[tm_mon, tm_mday, tm_year]
`%X'
A string representing the full time of day (hours, minutes, and
seconds), equivalent to "%H:%M:%S". [tm_sec, tm_min, tm_hour]
`%y'
The last two digits of the year (from ``00'' to ``99''). [tm_year]
`%Y'
The full year, equivalent to `%C%y'. It will always have at least
four characters, but may have more. The year is accurate even
when tm_year added to the offset of 1900 overflows an int.
[tm_year]
`%z'
The offset from UTC. The format consists of a sign (negative is
west of Greewich), two characters for hour, then two characters
for minutes (-hhmm or +hhmm). If tm_isdst is negative, the offset
is unknown and no output is generated; if it is zero, the offset
is the standard offset for the current time zone; and if it is
positive, the offset is the daylight savings offset for the
current timezone. The offset is determined from the TZ environment
variable, as if by calling tzset(). [tm_isdst]
`%Z'
The time zone name. If tm_isdst is negative, no output is
generated. Otherwise, the time zone name is based on the TZ
environment variable, as if by calling tzset(). [tm_isdst]
`%%'
A single character, ``%''.
`strftime' requires no supporting OS subroutines.
will give you access to the complete manual.