Linux中用shell獲取昨天、明天或多天前的日期


在Linux中可以通過date命令獲取昨天、明天、上個月、下個月、上一年和下一年 


# 獲取昨天 
date -d 'yesterday'  # 或 date -d 'last day' 
# 獲取明天 
date -d 'tomorrow'   # 或 date -d 'next day' 
# 獲取上個月 
date -d 'last month' 
# 獲取下個月 
date -d 'next month' 
# 獲取上一年 
date -d ’last year' 
# 獲取下一年 
date -d 'next year' 
此外你可以獲取多天前,多天后,多個月前,多個月后,多年前或多年后 


# 三年前 
date -d '3 year ago' 
# 五年后 
date -d '-5 year ago' 
# 兩天后 
date -d '-2 day ago' 
# 一個月前 
date -d '1 month ago' 
附:date命令使用格式 

date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]] 

說明 : date 能用來顯示或設定系統的日期和時間,在顯示方面,使用者能設定欲顯示的格式,格式設定為一個加號后接數個標記,其中可用的標記列表如下 : 

時間方面 : 
% : 印出 
% %n : 下一行 
%t : 跳格 
%H : 小時(00..23) 
%I : 小時(01..12) 
%k : 小時(0..23) 
%l : 小時(1..12) 
%M : 分鍾(00..59) 
%p : 顯示本地 AM 或 PM 
%r : 直接顯示時間 (12 小時制,格式為 hh:mm:ss [AP]M) 
%s : 從 1970 年 1 月 1 日 00:00:00 UTC 到目前為止的秒數 %S : 秒(00..61) 
%T : 直接顯示時間 (24 小時制) 
%X : 相當於 %H:%M:%S 
%Z : 顯示時區 
日期方面 : 
%a : 星期幾 (Sun..Sat) 
%A : 星期幾 (Sunday..Saturday) 
%b : 月份 (Jan..Dec) 
%B : 月份 (January..December) 
%c : 直接顯示日期和時間 
%d : 日 (01..31) 
%D : 直接顯示日期 (mm/dd/yy) 
%h : 同 %b 
%j : 一年中的第幾天 (001..366) 
%m : 月份 (01..12) 
%U : 一年中的第幾周 (00..53) (以 Sunday 為一周的第一天的情形) 
%w : 一周中的第幾天 (0..6) 
%W : 一年中的第幾周 (00..53) (以 Monday 為一周的第一天的情形) 
%x : 直接顯示日期 (mm/dd/yy) 
%y : 年份的最后兩位數字 (00.99) 
%Y : 完整年份 (0000..9999) 
若是不以加號作為開頭,則表示要設定時間,而時間格式為 MMDDhhmm[[CC]YY][.ss], 
其中 MM 為月份, 
DD 為日, 
hh 為小時, 
mm 為分鍾, 
CC 為年份前兩位數字, 
YY 為年份后兩位數字, 
ss 為秒數 
此外, 
-d datestr : 顯示 datestr 中所設定的時間 (非系統時間) 
--help : 顯示輔助訊息 
-s datestr : 將系統時間設為 datestr 中所設定的時間 
-u : 顯示目前的格林威治時間 
--version : 顯示版本編號 


原文地址:http://www.phpzixue.cn/detail818.shtml


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM