Date and Time String Formatting with strftime

Table A-18 shows common date and time string formatting options. Consult your system’s manpages for date and strftime(3), as both the options and what they mean vary from system to system.

Table A-18. strftime format codes

Format

Description

%%

A literal %.

%a

The locale’s abbreviated weekday name (Sun..Sat).

%A

The locale’s full weekday name (Sunday..Saturday).

%B

The locale’s full month name (January..December).

%b or %h

The locale’s abbreviated month name (Jan..Dec).

%c

The locale’s default/preferred date and time representation.

%C

The century (a year divided by 100 and truncated to an integer) as a decimal number (00..99).

%d

The day of the month as a decimal number (01..31).

%D

The date in the format %m/%d/%y (MM/DD/YY). Note that the United States uses MM/DD/YY while everyone else uses DD/MM/YY, so this format is ambiguous and should be avoided. Use %F instead, since it’s a recognized standard and it sorts well.

%e

The day of month as a blank padded decimal number ( 1..31).

%F

The date in the format %Y-%m-%d (the ISO 8601 date format: CCYY-MM-DD); except when it’s the full month name, as on HP-UX.

%g

The two-digit year corresponding to the %V week number (YY).

%G

The four-digit year corresponding to the %V week number (CCYY).

%H

The hour (24-hour clock) as a decimal number (00..23).

%h or %b

The locale’s abbreviated month name (Jan..Dec).

%I

The hour (12-hour clock) as a decimal number (01..12).

%j

The day of the year as a decimal ...

Get bash Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.