Date + % s can get UNIX timestamp;
Use shell to convert time strings and timestamps:
Date-d "00:00:00" + % s output format: 1287331200
The time stamp can be converted to a string as follows:
Date-d @ 1287331200 "+ % Y-% m-% d" output format: 2010-10-18
To get the days before and after the specified date, you can:
1. seconds = 'date-d "00:00:00" + % s' # Get the timestamp
2. seconds_new = 'expr $ seconds + 100' # Add 86400 seconds in a day
3. date_new = 'date-d @ $ seconds_new "+ % Y-% m-% d" '# obtain the day before the specified date plus the day before.
For more details:
Usage: date [-u] [-D datestr] [-s datestr] [-- UTC] [-- Universal] [-- date = datestr] [-- set = datestr] [-- help] [-- version] [+ format] [mmddhhmm [[CC] YY] [. SS]
Note: date can be used to display or set the date and time of the system. In terms of display, users can set the format to be displayed. The format is set to a plus sign followed by several tags, the available tags are listed as follows:
Time:
%: Printed
% N: Next row
% T: Skip
% H: hour (00 .. 23)
% I: hour (01 .. 12)
% K: hour (0 .. 23)
% L: hour (1 .. 12)
% M: minute (00 .. 59)
% P: displays local am or PM
% R: direct display time (in 12-hour format: hh: mm: ss [AP] m)
% S: number of seconds from January 1, 1970 00:00:00 UTC till now % s: seconds (00 .. 61)
% T: direct display time (in 24-hour format)
% X: equivalent to % H: % m: % s
% Z: display the time zone
Date:
% A: The day of the week (Sun .. SAT)
% A: The day of the week (Sunday .. Saturday)
% B: Month (Jan .. dec)
% B: Month (January... December)
% C: Display date and time directly
% D: Day (01 .. 31)
% D: Display date directly (mm/DD/yy)
% H: Same as % B
% J: The day of the year (001 .. 366)
% M: Month (01 .. 12)
% U: Week (00 .. 53) of the year (the first day of the week on Sunday)
% W: The day of the week (0 .. 6)
% W: Week (00 .. 53) of the Year (Monday is the first day of the week)
% X: Display date directly (mm/DD/yy)
% Y: last two digits of the Year (00.99)
% Y: full year (0000 .. 9999)
If it does not start with a plus sign, the time is set, and the time format is mmddhhmm [[CC] YY] [. SS].
MM indicates the month,
Dd is a day,
HH is the hour,
Mm is minute,
CC is the first two digits of the year,
YY is the last two digits of the year,
SS is the number of seconds
Calculation:
-D datestr: display the time set in datestr (non-system time)
-Help: displays auxiliary messages.
-S datestr: set the system time to the time set in datestr
-U: displays the current Greenwich Mean Time.
-Version: displays the version number.
Example:
The current date is displayed: date + % T % N % d
Show month and number of days: date + % B % d
Display date and set time (12:34:56): date-date 12:34:56
Note: If you do not want meaningless 0 values (for example,), you can insert the-symbol in the tag, for example, date + %-H: %-M: %-s removes the meaningless 0 in the hour, minute, and second, as if the original 08:09:04 will change. In addition, you can set the system time only when you have the permission (such as root. After you change the system time as root, remember to write the system time to CMOS using clock-w, in this way, the system time will continue to hold the latest correct value upon the next reboot.
Create a file named at the current time
Mkdir 'date + % Y % m % d'
The backup uses the time as the file name
Tar CVF./htdocs 'date when policyymm=d'.tar ./*
How do I obtain the date of the last week?
Lastmonth = 'date + % Y-% m -- date = "-1 month" '"-01 ";
Then awk-V is passed as a parameter to the simple point.
# Date-d "-1 week" "+ % Y % m % d %"
The date command returns the date of the day before yesterday, yesterday, tomorrow, the day after tomorrow, last month, and next month.
Date-d "-2 day" "+ % Y % m % d % A" or date -- date = "2 days ago" "+ % Y % m % d %"
Date-d "-1 day" "+ % Y % m % d % A" or date -- date = "1 day ago" "+ % Y % m % d %"
Date-d "1 day" "+ % Y % m % d %"
Date-d "2 day" "+ % Y % m % d %"
Date-d "-1 month" "+ % Y % m % d %"
Date-d "1 month" "+ % Y % m % d %"
Echo 'date-d "-1 month" "+ % Y-% m-% d % x "'
Other usage:
Date + % s can get UNIX timestamp;