The date command is used to display or set the system date and time. It can also format and manipulate dates in various ways.
Display the current date and time
Example Usage:
date
What it does:
Displays the current date and time in the default format, which includes the day, month, date, time, time zone, and year.
Command-line Arguments Explained:
- None: No arguments are required for basic usage, as the command defaults to showing the current date and time.
Example Usage:
date +"%Y-%m-%d %H:%M:%S"
What it does:
Prints the date and time in a custom format (e.g., "2023-10-25 14:30:00").
Command-line Arguments Explained:
+"format": Specifies a custom format string using directives like %Y (year), %m (month), %d (day), %H (hour), %M (minute), %S (second).
Set the system date and time
Example Usage:
date -s "2023-04-05 14:30:00"
What it does:
Sets the system date and time to the specified value (requires root privileges).
Command-line Arguments Explained:
Display the current date in UTC time
Example Usage:
date -u
What it does:
Shows the current date and time in Coordinated Universal Time (UTC).
Command-line Arguments Explained:
-u or --utc: Displays the date in UTC rather than the local time zone.
Parse and display a specific date
Example Usage:
date --date="next Friday"
What it does:
Displays the date and time for the next Friday.
Command-line Arguments Explained:
--date or -d: Accepts a date string (e.g., "next Friday", "2023-12-25", "1 hour ago") to compute and display.
Show the current timestamp in seconds since the epoch
Example Usage:
date +%s
What it does:
Prints the current date and time as a Unix timestamp (seconds since 1970-01-01 00:00:00 UTC).
Command-line Arguments Explained:
+%s: Output the Unix epoch timestamp.
Display the date in a specific locale or timezone
Example Usage:
date -r "Europe/London"
What it does:
Displays the current date and time in the specified timezone (e.g., London).
Command-line Arguments Explained:
-r: Uses the TZ environment variable to set the timezone.
"Europe/London": A valid timezone identifier (e.g., "America/New_York", "Asia/Tokyo").
Show the last modification time of a file
Example Usage:
date -r file.txt
What it does:
Displays the last modification time of the specified file (file.txt).
Command-line Arguments Explained:
Convert a date to a different timezone
Example Usage:
date -u -d "2023-04-05 14:30:00" +"%Y-%m-%d %H:%M:%S %Z"
What it does:
Displays the given date in UTC, including the timezone abbreviation.
Command-line Arguments Explained:
-u: Outputs the date in UTC.
-d "2023-04-05 14:30:00": Parses the specified date.
+"%Y-%m-%d %H:%M:%S %Z": Custom format showing the timezone.
Example Usage:
date -R
What it does:
Shows the date and time in RFC 2822 format, commonly used for email headers.
Command-line Arguments Explained:
-R or --rfc-2822: Formats the date according to the RFC 2822 standard.
Example Usage:
date +%F
What it does:
Outputs the current date in ISO 8601 format (e.g., "2023-10-25").
Command-line Arguments Explained:
+%F: Uses the ISO 8601 format for output (equivalent to %Y-%m-%d).
Show the day of the week
Example Usage:
date +"%A"
What it does:
Prints the full name of the current day (e.g., "Thursday").
Command-line Arguments Explained:
+"%A": Uses the %A directive to output the full weekday name.
Show the date relative to a specific date
Example Usage:
date -d "2023-04-05 14:30:00 + 3 days"
What it does:
Calculates the date and time three days after the specified date.
Command-line Arguments Explained:
Display the date in a different language or locale
Example Usage:
LC_TIME=en_US.UTF-8 date +"%A %B %d"
What it does:
Displays the date in English (United States) locale, including the weekday, month, and day.
Command-line Arguments Explained:
Example Usage:
date -r file.txt +"%Y-%m-%d %H:%M"
What it does:
Displays the last modification time of file.txt in a custom format.
Command-line Arguments Explained:
Set the system date from a file
Example Usage:
date -f datefile
What it does:
Reads the date from a file and sets the system date accordingly.
Command-line Arguments Explained:
-f: Specifies a file containing the date to set.
datefile: A file with a valid date string (e.g., "2023-04-05 14:30:00").