- -d, --date= STRING
- 顯示STRING指示的時間,STRING是比較隨性的可讀的字符串,比如說“2012-06-16 18:31:00”或者“next Thursday”,這個字符串通常包含日歷時間、時間、星期、日期、相對時間,相對日期或者數字。
- -f, --file= DATEFILE
- 和-d類似,對文件DATEFILE里的每一行做date -d操作
- -ITIMESPEC, --iso-8601[= TIMESPEC]
- 以ISO 8601格式顯示時間/日期。TIMESPEC=`date'只顯示日期, `hours', `minutes', or `seconds'顯示相應的精度. --iso-8601不帶TIMESPEC時等同於`date'.
- -r, --reference= FILE
- 顯示文件FILE最后修改的時間
- -R, --rfc-822
- 輸出與RFC-822相適應的時間字符串
- -s, --set= STRING
- 設置STRING指定的時間
- -u, --utc, --universal
- 輸出或者設置UTC時間
- --help
- 顯示命令幫助
- --version
- 輸出版本信息
格式 |
說明 |
實例 |
%a |
縮寫的星期名 |
Thu |
%A |
全星期名 |
Thursday |
%b |
縮寫的月名 |
Aug |
%B |
全月名 |
August |
%c |
日期和時間 |
Thu Aug 23 14:55:02 2001 |
%C |
年/100 [00,99] |
20 |
%d |
十進制表示的每月的第幾天 [01,31] |
16 |
%D |
月/天/年 [m%/d%/y%] |
06/16/12 |
%e |
十進制表示的每月的第幾天 ,一位數前加空格[1,31] |
10 |
%F |
年-月-日 [Y%-m%-d%] |
2012-06-16 |
%g |
ISO 8601使用基於周的年的后兩位數字 |
12 |
%G |
ISO 8601使用基於周的年 |
2012 |
%h |
簡寫的月份名 ,與%b相同 |
Aug |
%H |
24小時制的小時 [00,23] |
14 |
%I |
12小時制的小時 [01,12] |
02 |
%j |
每年的第幾天 [001,366] |
235 |
%k |
24小時制的小時 [0,23] |
5 |
%l |
12小時制的小時 [1,12] |
5 |
%m |
十進制的月 [01,12] |
08 |
%M |
分鍾 [00,59] |
55 |
%n |
換行符 |
|
%N |
十億分之一秒,納秒 [000000000,999999999] |
000000001 |
%p |
AM/PM |
PM |
%P |
am/pm |
pm |
%r |
本地時間:(12時制) |
11:01:23 AM |
%R |
與“%H:%M”相同 |
11:01 |
%s |
自'00:00:00 1970-01-01 UTC' 的秒數 |
1339819819 |
%S |
秒 [00,60] |
02 |
%t |
水平制表符 |
|
%T |
與“%H:%M:%S”相同 |
11:01:23 |
%u |
ISO 8601的星期,星期一為1,[1,7] |
2 |
%U |
周數 ,以周日為一周開始 [00,53] |
33 |
%V |
ISO 8601周數 [01,53] |
07 |
%w |
星期,星期天為0. [0,6] |
4 |
%W |
周數,以星期一為一周開始 [00,53] |
34 |
%x |
標准日期 |
06/16/12 |
%X |
標准時間 |
14:55:02 |
%y |
年份的后兩位數字 [00,99] |
12 |
%Y |
年 |
2012 |
%z |
ISO 8601格式的UTC偏移量 |
-0500 |
%Z |
時區名 |
EST |
%% |
百分號 |
% |
date -d "1 day" # 以默認格式顯示一天后的日期(還可以 second,minute,..直到year,可以加s表示復數)
date -d "1970-01-01 UTC 1128621784 seconds" # 以默認格式顯示從1970-01-01 UTC起后1128621784秒的日期
date -d "3 day ago" +%Y%m%d # 以指定格式顯示3天前的日期
date -d "1 month" +%Y-%m-%d # 以指定格式顯示一個月后的日期
date -d "1 month" +%s # 以指定格式顯示一個月后的日期(此格式為從1970年1月1日00:00:00到目前經歷的秒數,%S為當前的秒數(0~59))
date -d "1970-01-01 CST 1 second" +%s # 顯示從1970-01-01 CST起1秒后的秒數(-28799,注意時區"CST")
date -d "2 hours" # 2小時前
date -d "1 minutes" # 1分鍾前
date -d "2 seconds" # 2秒鍾前
將時間戳轉換成date
#date -d '1970-01-01 UTC 1199116800 seconds'
2008年 01月 01日 星期二 00:00:00 CST
#export LANG=en
#date -d '19700101 UTC 1199116800 seconds'
Tue Jan 1 00:00:00 CST 2008mi
原文鏈接http://hi.baidu.com/toyou234/item/7d51a9db00b808e154347fbe
date實用舉例:
#顯示時區
[cnscn@root /home/cnscn/backup]# date +%Z
CST
#顯示世紀
[cnscn@root /home/cnscn/backup]# date +%C
20
====================設置===========================
#設置時間為: 2005年02月22日09:10:46
[cnscn@root /home/cnscn/backup]# date 022209102005.46 #月 日 時 分 年. 秒
二 2月22 09:10:46 CST 2005
#[cnscn@root /home/cnscn/backup]# date -s "+3 hours" #將時間增加3小時
二 2月22 09:46:14 CST 2005
#[cnscn@root /home/cnscn/backup]# date -s "-40 minutes" #將時間減少40分鍾
二 2月22 09:06:35 CST 2005
#[cnscn@root /home/cnscn/backup]# date -s "+1 year" #時間增加1年
三 2月22 09:14:55 CST 2006
#[cnscn@root /home/cnscn/backup]# date -s "-1 year" #時間減少一年
二 2月22 09:15:02 CST 2005
======================按日期顯示============================
[cnscn@root /home/cnscn/backup]# date -d "+1 year"
三 2月22 09:57:46 CST 2006
[cnscn@root /home/cnscn/backup]# date -d "-1 month"
六 1月22 09:49:08 CST 2005
[cnscn@root /home/cnscn/backup]# date -d "-1 month" +%s
1106358557
#[cnscn@root /home/cnscn/backup]# date -d "7 days ago" #顯示7天前的時間
二 2月15 09:16:09 CST 2005
#[cnscn@root /home/cnscn/backup]# date -d "7 days ago" +%s #顯示7天前時間的秒值
1108430178
#[cnscn@root /home/cnscn/backup]# date -d "7 days" #顯示7天后時間的秒值
二 3月 1 09:17:11 CST 2005
#[cnscn@root /home/cnscn/backup]# date -d "7 days" +%s #顯示7天后時間的秒值
1109639824
=======================================================
#顯示當前系統時間和日期
$date
#完整的日期時間顯示
[cnscn@root /home/cnscn/backup]# date +%c
2005年02月22日 星期二 09時32分19秒
#以格林威治標准時間顯示目前時間和日期
[cnscn@root /home/cnscn/backup]# date -u
二 2月22 01:38:20 UTC 2005
#以當地習慣顯示日期
[cnscn@root /home/cnscn/backup]# date +%x
2005年02月22日
#以mm/dd/yy格式顯示系統日期
[cnscn@root /home/cnscn/backup]# date +%D
02/22/05
=========================================================
#英文全稱月份
[cnscn@root /home/cnscn/backup]# date +%B
二月
#英文縮寫月份
[cnscn@root /home/cnscn/backup]# date +%b
2月
============================================================
#今年第幾天
[cnscn@root /home/cnscn/backup]# date +%j
053
============================================================
#時:分:秒
[cnscn@root /home/cnscn/backup]# date +%T09:24:07
#加上AM與PM
[cnscn@root /home/cnscn/backup]# date +%T%p
09:24:07上午
[cnscn@root /home/cnscn/backup]# date +%r
09:34:44 上午
=========================================================
#周幾
[cnscn@root /home/cnscn/backup]# date +%w
2
#本地格式周幾全稱
[cnscn@root /home/cnscn/backup]# date +%A
星期二
#本地格式周幾縮寫
[cnscn@root /home/cnscn/backup]# date +%a
二
#今年第幾周
[cnscn@root /home/cnscn/backup]# date +%U
08
1)把時間轉成秒
$date -d "20061206 07:08" +%s
1165360080
2)把秒轉換成時間
$ date
2006年07月06日 星期四11:57:18 CST
$ date -d "now" +%s
1152158238
$ date -d "19700101 1152158238 seconds UTC"
2006年07月06日 星期四11:57:18 CST
$ date -d "@1152158238"