DATE(1)

名稱
date - 輸出或設定系統日期與時間

概述
date [選項]... [+格式字串]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]

描述

按照給定的格式字串顯示日期和時間。使用了 -s 選項或 [MMDDhhmm[[CC]YY][.ss]] 引數時，設定日期和時間。

必選引數對長短選項同時適用。

-d, --date=字串
    顯示由字串指定的時間，而不是當前時間

--debug
    對日期的解析過程進行註解，對不規範的用法進行警告，並輸出到標準錯誤

-f, --file=日期檔案
    類似 --date；對日期檔案的每一行執行一次

-I[格式], --iso-8601[=格式]
    以 ISO 8601 格式輸出日期/時間。格式="date" 時只輸出日期（預設行為），當其為 "hours"、"minutes"、"seconds" 或 "ns" 時則按照所指示的精確度顯示日期和時間。示例：2006-08-14T02:34:56-06:00

--resolution
    輸出時間戳的可用精度 例如：0.000000001

-R, --rfc-email
    以 RFC 5322 格式輸出日期與時間。例：Mon, 14 Aug 2006 02:34:56 -0600

--rfc-3339=格式
    以 RFC 3339 格式輸出日期/時間。格式="date"、"seconds" 或 "ns"，按照所指示的精確度顯示日期和時間。例如：2006-08-14 02:34:56-06:00

-r, --reference=檔案
    顯示指定檔案的最後修改時間

-s, --set=字串
    將時間設定為字串所描述的時間

-u, --utc, --universal
    按照協調世界時 (UTC) 顯示或設定時間

--help
    顯示此幫助資訊並退出

--version
    顯示版本資訊並退出

格式字串控制輸出格式。支援解釋的序列有：

%%  一個 % 字元

%a  當前區域設定的星期幾的縮寫（例如：日）

%A  當前區域設定的星期幾的全稱（例如：星期日）

%b  當前區域設定的月份縮寫（例如：1月）

%B  當前區域設定的月份全稱（例如：一月）

%c  當前區域設定的日期和時間（例如：2005年03月03日 星期四 23時05分25秒）

%C  世紀（指年份的最高兩位）；類似 %Y，但省略最後兩位數（例如：20）

%d  日（例如：01）

%D  日期；等於 %m/%d/%y

%e  日，以空格填充；等於 %_d

%F  完整的日期；等於 %+4Y-%m-%d

%g
     ISO 週數年的最後兩位（參見 %G）

%G
     ISO 週數年（參見 %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，但使用小寫

%q  季度 (1..4)

%r  當前區域設定中 12 小時制鐘表時間（例如：下午 11時11分04秒）

%R  24 小時制的小時和分鐘；等於 %H:%M

%s  自 Epoch (1970-01-01 00:00 UTC) 以來的秒數

%S  秒 (00..60)

%t  製表符

%T
     時間；等於 %H:%M:%S

%u  星期幾 (1..7)；1 代表星期一

%U  一年中的第幾周，以週日為每週第一天 (00..53)

%V  ISO 週數，以週一為每週第一天 (01..53)

%w  星期幾 (0..6)；0 代表星期日

%W  一年中的第幾周，以週一為每週第一天 (00..53)

%x  當前區域設定的日期表示法（例如：1999年12月31日）

%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）

預設情況下，date 輸出的數字欄位以 0 填充。以下可選的標誌可以跟在 "%" 後：

-   （連字元）不填充該欄位

_   （下劃線）以空格填充

0   （數字 0）以 0 填充

+   以 0 填充，並且在超過四位數的未來年份之前新增 "+" 符號

^   如果可能，使用大寫形式

#   如果可能，使用相反的大小寫

在任何標誌之後可以有一個可選的欄位寬度，它是一個十進位制數字；然後是一個可選的修飾符，它可以是 E，表示如果可用，使用區域設定的另一種表示法，或者 O，表示如果可用，使用區域設定的另一套數字符號。

範例
將 Epoch (1970-01-01 UTC) 以來的秒數轉換為日期

    $ date --date='@2147483647'

顯示美國西海岸的當前時間（請使用 tzselect(1) 來查詢 TZ 的具體數值）

    $ TZ='America/Los_Angeles' date

顯示美國西海岸下個週五上午 9 時的當地時間

    $ date --date='TZ="America/Los_Angeles" 09:00 next Fri'

日期字串
“--date=字串”選項中的的字串可以是人類易於理解閱讀的日期字串，例如 "Sun, 29 Feb 2004 16:21:42 -0800" 或 "2004-02-29 16:21:42"，甚至可以是 "next Thursday"。一個日期字串可能包含表示日曆日期、一日中的具體時間、時區、星期、相對時間、相對日期和數字的資訊。一個空字串表示當日的起始。日期字串的具體格式較為複雜，在手冊頁中難以簡單描述清楚，但是您可以在 info 文件中找到完整內容。

作者
由 David MacKenzie 編寫。

報告錯誤
GNU coreutils 的線上幫助： <https://www.gnu.org/software/coreutils/>
請向 <https://translationproject.org/team/zh_CN.html> 報告翻譯錯誤。

版權
Copyright © 2022 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
本軟體是自由軟體：您可以自由修改和重新發布它。在法律允許的範圍內，不提供任何保證。

參見
完整文件請見： <https://www.gnu.org/software/coreutils/date>
或者在本地使用： info '(coreutils) date invocation'

跋
本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃：https://github.com/man-pages-zh/manpages-zh