“date”命令使用標(biāo)準(zhǔn)的輸出打印當(dāng)前的日期和時(shí)間,也可以深入設(shè)置。
root@tecmint:~# date
Fri May 17 14:13:29 IST 2013
root@tecmint:~# date --set='14 may 2013 13:57'
Mon May 13 13:57:00 IST 2013
注意:這個(gè)命令在腳本中十分有用,以及基于時(shí)間和日期的腳本更完美。而且在終端中改變?nèi)掌诤蜁r(shí)間,讓你更專業(yè)?。。。ó?dāng)然你需要root權(quán)限才能操作這個(gè),因?yàn)樗窍到y(tǒng)整體改變)
根據(jù)指定格式顯示當(dāng)前時(shí)間或設(shè)置系統(tǒng)時(shí)間.
-d, --date=STRING
顯示由 STRING 指定的時(shí)間, 而不是當(dāng)前時(shí)間
-f, --file=DATEFILE
顯示 DATEFILE 中每一行指定的時(shí)間, 如同將 DATEFILE 中的每行作為 --date 的參數(shù)一樣
-I, --iso-8601[=TIMESPEC] 按照 ISO-8601 的日期/時(shí)間格式輸出時(shí)間.
TIMESPEC=`date' (或者不指定時(shí))僅輸出日期,等于 `hours', `minutes', 或`seconds' 時(shí)按照指定精度輸出日期及時(shí)間.
-r, --reference=FILE
顯示 FILE 的最后修改時(shí)間
-R, --rfc-822
根據(jù) RFC-822 指定格式輸出日期
-s, --set=STRING
根據(jù) STRING 設(shè)置時(shí)間
-u, --utc, --universal
顯示或設(shè)置全球時(shí)間(格林威治時(shí)間)
--help
顯示本幫助文件并退出
--version
顯示版本信息并退出
格式 FORMAT 控制著輸出格式. 僅當(dāng)選項(xiàng)指定為全球時(shí)間時(shí)本格式才有效。 分別解釋如下:
%%
文本的 %
%a
當(dāng)前區(qū)域的星期幾的簡(jiǎn)寫(xiě) (Sun..Sat)
%A
當(dāng)前區(qū)域的星期幾的全稱 (不同長(zhǎng)度) (Sunday..Saturday)
%b
當(dāng)前區(qū)域的月份的簡(jiǎn)寫(xiě) (Jan..Dec)
%B
當(dāng)前區(qū)域的月份的全稱(變長(zhǎng)) (January..December)
%c
當(dāng)前區(qū)域的日期和時(shí)間 (Sat Nov 04 12:02:33 EST 1989)
%d
(月份中的)幾號(hào)(用兩位表示) (01..31)
%D
日期(按照 月/日期/年 格式顯示) (mm/dd/yy)
%e
(月份中的)幾號(hào)(去零表示) ( 1..31)
%h
同 %b
%H
小時(shí)(按 24 小時(shí)制顯示,用兩位表示) (00..23)
%I
小時(shí)(按 12 小時(shí)制顯示,用兩位表示) (01..12)
%j
(一年中的)第幾天(用三位表示) (001..366)
%k
小時(shí)(按 24 小時(shí)制顯示,去零顯示) ( 0..23)
%l
小時(shí)(按 12 小時(shí)制顯示,去零表示) ( 1..12)
%m
月份(用兩位表示) (01..12)
%M
分鐘數(shù)(用兩位表示) (00..59)
%n
換行
%p
當(dāng)前時(shí)間是上午 AM 還是下午 PM
%r
時(shí)間,按 12 小時(shí)制顯示 (hh:mm:ss [A/P]M)
%s
從 1970年1月1日0點(diǎn)0分0秒到現(xiàn)在歷經(jīng)的秒數(shù) (GNU擴(kuò)充)
%S
秒數(shù)(用兩位表示)(00..60)
%t
水平方向的 tab 制表符
%T
時(shí)間,按 24 小時(shí)制顯示(hh:mm:ss)
%U
(一年中的)第幾個(gè)星期,以星期天作為一周的開(kāi)始(用兩位表示) (00..53)
%V
(一年中的)第幾個(gè)星期,以星期一作為一周的開(kāi)始(用兩位表示) (01..52)
%w
用數(shù)字表示星期幾 (0..6); 0 代表星期天
%W
(一年中的)第幾個(gè)星期,以星期一作為一周的開(kāi)始(用兩位表示) (00..53)
%x
按照 (mm/dd/yy) 格式顯示當(dāng)前日期
%X
按照 (%H:%M:%S) 格式顯示當(dāng)前時(shí)間
%y
年的后兩位數(shù)字 (00..99)
%Y
年(用 4 位表示) (1970...)
%z
按照 RFC-822 中指定的數(shù)字時(shí)區(qū)顯示(如, -0500) (為非標(biāo)準(zhǔn)擴(kuò)充)
%Z
時(shí)區(qū)(例如, EDT (美國(guó)東部時(shí)區(qū))), 如果不能決定是哪個(gè)時(shí)區(qū)則為空
默認(rèn)情況下,用 0 填充數(shù)據(jù)的空缺部分. GNU 的 date 命令能分辨在 `%'和數(shù)字指示之間的以下修改.
`-' (連接號(hào)) 不進(jìn)行填充 `_' (下劃線) 用空格進(jìn)行填充
例1
[root@localhost www]# date #顯示日期和時(shí)間
2013年 05月 04日 星期六 14:35:33 CST
[root@localhost www]# date -s '14:35:40' #設(shè)置時(shí)間
2013年 05月 04日 星期六 14:35:40 CST
例2
[root@rudder ~]# date +%m%d%H%M%S
0819150511
[root@rudder ~]# date 0819150511
Fri Aug 19 15:05:00 EST 2011
例3
#date -s //設(shè)置當(dāng)前時(shí)間,只有root權(quán)限才能設(shè)置,其他只能查看。
#date -s 20061010 //設(shè)置成20061010,這樣會(huì)把具體時(shí)間設(shè)置成空00:00:00
#date -s 12:23:23 //設(shè)置具體時(shí)間,不會(huì)對(duì)日期做更改
#date -s "12:12:23 2006-10-10″ //這樣可以設(shè)置全部時(shí)間
例4
[root@localhost ~]# date -d "20150305" +%s #時(shí)間轉(zhuǎn)時(shí)間戳
1425484800
[root@localhost ~]# date -d '1970-01-01 UTC 1425484800 seconds' #時(shí)間戳轉(zhuǎn)時(shí)間
2015年 03月 05日 星期四 00:00:00 CST