作者 | Rosehosting
譯者 | lujun9972
在本文中, 我們會透過一些案例來演示如何使用 Linux 中的 date
命令。date
命令可以使用者輸出/設定系統日期和時間。 date
命令很簡單, 請參見下麵的例子和語法。
預設情況下,當不帶任何引數執行 date
命令時,它會輸出當前系統日期和時間:
$ date
Sat 2 Dec 12:34:12 CST 2017
語法
Usage: date [OPTION]... [+FORMAT]
or: date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
以給定格式顯示當前時間,或設定系統時間。
案例
下麵這些案例會向你演示如何使用 date
命令來檢視前後一段時間的日期時間。
1、 查詢 5 周後的日期
date -d "5 weeks"
Sun Jan 7 19:53:50 CST 2018
2、 查詢 5 周後又過 4 天的日期
date -d "5 weeks 4 days"
Thu Jan 11 19:55:35 CST 2018
3、 獲取下個月的日期
date -d "next month"
Wed Jan 3 19:57:43 CST 2018
4、 獲取下週日的日期
date -d last-sunday
Sun Nov 26 00:00:00 CST 2017
date
命令還有很多格式化相關的選項, 下麵的例子向你演示如何格式化 date
命令的輸出.
5、 以 yyyy-mm-dd
的格式顯示日期
date +"%F"
2017-12-03
6、 以 mm/dd/yyyy
的格式顯示日期
date +"%m/%d/%Y"
12/03/2017
7、 只顯示時間
date +"%T"
20:07:04
8、 顯示今天是一年中的第幾天
date +"%j"
337
9、 與格式化相關的選項
格式 | 說明 |
---|---|
%% |
顯示百分號 (% )。 |
%a |
星期的縮寫形式 (如: Sun )。 |
%A |
星期的完整形式 (如: Sunday )。 |
%b |
縮寫的月份 (如: Jan )。 |
%B |
當前區域的月份全稱 (如: January )。 |
%c |
日期以及時間 (如: Thu Mar 3 23:05:25 2005 )。 |
%C |
當前世紀;類似 %Y , 但是會省略最後兩位 (如: 20 )。 |
%d |
月中的第幾日 (如: 01 )。 |
%D |
日期;效果與 %m/%d/%y 一樣。 |
%e |
月中的第幾日, 會填充空格;與 %_d 一樣。 |
%F |
完整的日期;跟 %Y-%m-%d 一樣。 |
%g |
年份的後兩位 (參見 %G )。 |
%G |
年份 (參見 %V );通常跟 %V 連用。 |
%h |
同 %b 。 |
%H |
小時 (00 ..23 )。 |
%I |
小時 (01 ..12 )。 |
%j |
一年中的第幾天 (001 ..366 )。 |
%k |
小時, 用空格填充 ( 0 ..23 ); 與 %_H 一樣。 |
%l |
小時, 用空格填充 ( 1 ..12 ); 與 %_I 一樣。 |
%m |
月份 (01 ..12 )。 |
%M |
分鐘 (00 ..59 )。 |
%n |
換行。 |
%N |
納秒 (000000000 ..999999999 )。 |
%p |
當前區域時間是上午 AM 還是下午 PM ;未知則為空。 |
%P |
類似 %p , 但是用小寫字母顯示。 |
%r |
當前區域的 12 小時制顯示時間 (如: 11:11:04 PM )。 |
%R |
24 小時制的小時和分鐘;同 %H:%M 。 |
%s |
從 1970-01-01 00:00:00 UTC 到現在經歷的秒數。 |
%S |
秒數 (00 ..60 )。 |
%t |
製表符。 |
%T |
時間;同 %H:%M:%S 。 |
%u |
星期 (1 ..7 );1 表示 星期一 。 |
%U |
一年中的第幾個星期,以週日為一週的開始 (00 ..53 )。 |
%V |
一年中的第幾個星期,以週一為一週的開始 (01 ..53 )。 |
%w |
用數字表示周幾 (0 ..6 ); 0 表示 週日 。 |
%W |
一年中的第幾個星期, 週一為一週的開始 (00 ..53 )。 |
%x |
當前區域的日期表示(如: 12/31/99 )。 |
%X |
當前區域的時間表示 (如: 23:13:48 )。 |
%y |
年份的後面兩位 (00 ..99 )。 |
%Y |
年。 |
%z |
以 +hhmm 的數字格式表示時區 (如: -0400 )。 |
%:z |
以 +hh:mm 的數字格式表示時區 (如: -04:00 )。 |
%::z |
以 +hh:mm:ss 的數字格式表示時區 (如: -04:00:00 )。 |
%:::z |
以數字格式表示時區, 其中 : 的個數由你需要的精度來決定 (例如, -04 , +05:30 )。 |
%Z |
時區的字元縮寫(例如, EDT )。 |
10、 設定系統時間
你也可以使用 date
來手工設定系統時間,方法是使用 --set
選項, 下麵的例子會將系統時間設定成 2017 年 8 月 30 日下午 4 點 22 分。
date --set="20170830 16:22"
當然, 如果你使用的是我們的 VPS 託管服務[1],你總是可以聯絡並諮詢我們的 Linux 專家管理員(透過客服電話或者下工單的方式)關於 date
命令的任何東西。他們是 24×7 線上的,會立即向您提供幫助。(LCTT 譯註:原文的廣告~)
PS. 如果你喜歡這篇帖子,請點選下麵的按鈕分享或者留言。謝謝。
via: https://www.rosehosting.com/blog/use-the-date-command-in-linux/
作者:rosehosting[3] 譯者:lujun9972 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出