Date

From NovaOrdis Knowledge Base
Jump to navigation Jump to search

External

Internal

Overview

date +'%m/%d/%y %H:%M:%S'

Output:

03/07/11 16:07:17

Double quotes also work:

date +"%m/%d/%y %H:%M:%S"

This also works:

date "+%m/%d/%y %H:%M:%S"

Output Patterns

%s seconds since epoch (?)

Time Zone

+%z
-0700

AM/PM

date +'%m/%d/%y %I:%M:%S %p'

Year

Short year (14) %y

Long year (2014) %Y

Month

%m

Hour

24-hour hour: %H

Displaying Date in a Different Timezone

Configure the desired timezone by setting up the TZ environment variable:

TZ="America/Los_Angeles"

To list available timezones, either list files in /usr/share/zoneinfo or run:

timedatectl list-timezones

File Name Format

date +'%y.%m.%d-%H.%M.%S'

or

date +'%Y.%m.%d'

Setting Date and Time

date 08311650

sets the date for 08/31 current year, time 16:50.

Getting the Time in Seconds

date '+%s'

Elapsed Time in Seconds

local t0 t1 elapsed
t0=$(date '+%s')
sleep 2
t1=$(date '+%s')
elapsed=$(("${t1}"-"${t0}"))
echo "elapsed seconds: ${elapsed}"

ISO 8601 Format

date "+%Y-%m-%dT%H:%M:%S%z"

Also see:

gdate ISO 8601 Format