linux命令之date
例题:使用date命令输出“xxxx-xx-xx”格式的日期,如2015-03-01。
#date +%Y-%m-%d 2015-03-0 #date +%F 2015-02-28
1.date命令可以实现多种格式输出,这取决于表示符号(如%Y)之间的连接符号:
# date +%Y/%m/%d 2015/02/28 # date +%H:%M 00:54
2.date命令主要选项:
-d:在使用man date查看-d选项描述较为模糊,(-d, --date=STRING display time described by STRING, not ‘now’),实际使用-d表示过去、未来的时间:
# date -d next-day +%Y-%m-%d #明天日期 2015-03-01 # date -d last-day +%Y-%m-%d #昨天日期 2015-02-27
更为简单的方法是在-d 后接+nday或-nday,n为数字,如3天后为+3day;同样小时使用+nhour、-nhour,分钟使用+nmin、-nmin。
# date -d +3day Sat Mar 7 16:10:37 CST 2015
3.date命令时间字符表示说明:
时间方面 :
% : 印出
%n : 下一行
%t : 跳格
%H : 小时 01
%I : 小时 01
%k : 小时 1
%l : 小时 1
%M : 分钟 17
%p : 显示本地 AM 或 PM(上午、下午)
%r : 直接显示时间 (12 小时制,格式为hh:mm:ss [AP]M)
%s : 从 1970 年 1 月 1 日 00:00:00UTC 到目前为止的秒数
%S : 秒
%T : 直接显示时间 (24 小时制 01:18:50)
%X : 时间显示 01时19分09秒
%Z : 显示时区 CST
日期方面 :
%a : 星期几 (Sun,Sat)
%A : 星期几(Sunday,Saturday)
%b : 月份 (Jan,Dec)
%B : 月份(January,December)
%c : 直接显示日期和时间(Sat Feb 28 01:22:34 2015)
%d : 日 (31)
%D : 直接显示日期 (mm/dd/yy)
%h : 同 %b
%j : 一年中的第几天 (001,366)
%m : 月份,以数字 (01,12)
%U : 一年中的第几周 (00,53) (以 Sunday 为一周的第一天的情形)
%w : 星期,以数字表示 (6)
%W : 一年中的第几周 (00,53) (以 Monday 为一周的第一天的情形)
%x : 直接显示日期 (mm/dd/yy)
%y : 年份的最后两位数字 (00,99)
%Y : 完整年份 (0000,9999)
4.修改时间
若是不以加号作为开头,则表示要设定时间,而时间格式为 MMDDhhmm[[CC]YY][ss],
其中 MM 为月份,
DD 为日,
hh 为小时,
mm 为分钟,
CC 为年份前两位数字,
YY 为年份后两位数字,
ss 为秒数
# date 03041605 Wed Mar 4 16:05:00 CST 2015
使用date –s:按字符串方式修改时间
可以只修改日期,不修改时间:
date -s 2015-03-04 Wed Mar 4 00:00:00 CST 2015
只修改时间:
# date -s 16:20:00 Wed Mar 4 16:20:00 CST 2015
同时修改日期时间,注意要加双引号,日期与时间之间有一空格,输入:
# date -s "2015-03-04 16:22:00" Wed Mar 4 16:22:00 CST 2015
其它说明:
当你不希望出现无意义的 0 时(比如说 2005/03/01),则能在标记中插入 - 符号,比如说 date +%-H:%-M:%-S 会把时分秒中无意义的 0 给去掉,像是原本的 01:09:04 会变为 1:9:4。
另外,只有取得权限者(比如说 root)才能设定系统时间。当你以 root 身分更改了系统时间之后,请记得以 clock -w 来将系统时间写入 CMOS 中,这样下次重新开机时系统时间才会持续抱持最新的正确值。
本文出自 “SweetSmile” 博客,请务必保留此出处http://daizhancheng.blog.51cto.com/9708457/1617270
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。