已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Linux-date命令 date命令date命令的功能是显示和设置系统日期和时间。该命令的一般格式为: date 选项 显示时间格式(以+开头,后面接格式)date 设置时间格式命令中各选项的含义分别为:-d datestr, -date datestr 显示由datestr描述的日期-s datestr, -set datestr 设置datestr 描述的日期-u, -universal 显示或设置通用时间时间域% H 小时(00.23)% I 小时(01.12)% k 小时(0.23)% l 小时(1.12)% M 分(00.59)% p 显示出AM或PM% r 时间(hh:mm:ss AM或PM),12小时% s 从1970年1月1日00:00:00到目前经历的秒数% S 秒(00.59)% T 时间(24小时制)(hh:mm:ss)% X 显示时间的格式(H:M:S)% Z 时区 日期域% a 星期几的简称( Sun.Sat)% A 星期几的全称( Sunday.Saturday)% b 月的简称(Jan.Dec)% B 月的全称(January.December)% c 日期和时间( Mon Nov 8 14:12:46 CST 1999)% d 一个月的第几天(01.31)% D 日期(mmddyy)% h 和%b选项相同% j 一年的第几天(001.366)% m 月(01.12)% w 一个星期的第几天(0代表星期天)% W 一年的第几个星期(00.53,星期一为第一天)% x 显示日期的格式(mm/dd/yy)% y 年的最后两个数字( 1999则是99)% Y 年(例如:1970,1996等)需要特别说明的是,只有超级用户才能用date命令设置时间,一般用户只能用date命令显示时间。例1:用指定的格式显示时间。$ date +This date now is =%x ,time is now =%X ,thank you !This date now is =11/12/99 ,time is now =17:53:01 ,thank you !例2:用预定的格式显示当前的时间。# dateFri Nov 26 15:20:18 CST 1999例3:设置时间为下午14点36分。# date -s 14:36:00Fri Nov 26 14:15:00 CST 1999例4:设置时间为1999年11月28号。# date -s 991128Sun Nov 28 00:00:00 CST 1999例5:设置一天前date -date 1 days ago +%Y-%m-%dDate 命令参数小技巧LastUpdated:2006-03-27By:Gman!-for beginner:wink:此参数可以用于日志处理和时间统计;由于Linux对man date -d 参数说的比较模糊,故举例如下:# -d, -date=STRING display time described by STRING, not nowFor LinuxrootGman root# date -d next-day +%Y%m%d20060328rootGman root# date -d last-day +%Y%m%d20060326rootGman root# date -d yesterday +%Y%m%d20060326rootGman root# date -d tomorrow +%Y%m%d20060328rootGman root# date -d last-month +%Y%m200602rootGman root# date -d next-month +%Y%m200604rootGman root# date -d next-year +%Y2007-而FreeBSD则不同;举例如下:For FreeBSDbash-2.05b# date -v -1d +%Y%m%d20060326bash-2.05b# date -v -1m +%Y%m%d20060227bash-2.05b# date -v -1y +%Y%m%d20050327 一些 man page 沒提到的 -date=STRING 使用方法date -d yesterday # 顯示昨天的時間date -d tomorrow # 顯示明天的時間date -d 1 hour # 顯示一小時後的時間date -d 2 day ago # 顯示二天前的時間date -d 3 month ago # 顯示三個月前的時間date -d 2 year # 顯示二年後的時間date -d last friday # 顯示上個星期五的時間date -d next week # 顯示下週的時間date -d next month # 顯示下個月的時間date -d fortnight # 顯示二週後的時間date -d 7/1 3 week # 顯示 7/1 起算的第三週date -d now +%s #时间转成时间戳date -d 1970-01-01 1251734400 sec utc +%Y/%m/%d/ %T #时间戳转成时间本地时间与UTC(世界协调时间)的转换 首先我们了解一下时间的相关概念,以及之间的区别,需要了解的时间概念有:本地时间(locale time)格林威治时间(Greenwich Mean Time GMT)时间协调时间 (Universal Time Coordinated UTC)本地时间,显而易见不用解释了先看看时间的标准:(1)世界时世 界时是最早的时间标准。在1884年,国际上将1s确定为全年内每日平均长度的1/8.64104。以此标准形成的时间系统,称为世界是,即 UT1。1972年国际上开始使用国际原子时标,从那以后,经过格林威治老天文台本初子午线的时间便被称为世界时,即UT2,或称格林威治时间 (GMT),是对地球转速周期性差异进行校正后的世界时。(2)原子时1967年,人们利用铯原子振荡周期极为规律的特性,研制出了 高精度的原子时钟,将铯原子能级跃迁辐射9192631770周所经历的时间定为 1s。现在用的时间就是1971年10月定义的国际原子时,是通过世界上大约200多台原子钟进行对比后,再由国际度量衡局时间所进行数据处理,得出的统 一的原子时,简称TAI。(3)世界协调时世界协调时是以地球自转为基础的时间标准。由于地球自转速度并不均匀,并非每天都是精确的 86400原子s,因而导致了自转时间与世界时之间存在 18个月有1s的误差。为纠正这种误差,国际地球自转研究所根据地球自转的实际情况对格林威治时间进行增减闰s的调整,与国际度量衡局时间所联合向全世界 发布标准时间,这就是所谓的世界协调时(UTC:Coordinatde Universal Time)。UTC的表示方式为:年(y)、月(m)、日(d)、时(h)、分(min)、秒(s),均用数字表示。 GPS 系统中有两种时间区分,一为UTC,另一为LT(地方时)两者的区别为时区不同,UTC就是0时区的时间,地方时为本地时间,如北京为早上八点(东八区),UTC时间就为零点,时间比北京时晚八小时,以此计算即可通过上面的了解,我们可以认为格林威治时间就是时间协调时间(GMT=UTC),格林威治时间和UTC时间均用秒数来计算的。 而在我们平时工作当中看到的计算机日志里面写的时间大多数是用UTC时间来计算的,那么我们该怎么将UTC时间转化为本地时间便于查看日志,那么在作程序开发时又该怎么将本地时间转化为UTC时间呢?下面就介绍一个简单而使用的工具,就是使用linux/unix命令date来进行本地时间和local时间的转化。大家都知道,在计算机中看到的utc时间都是从(1970年01月01日 0:00:00)开始计算秒数的。所看到的UTC时间那就是从1970年这个时间点起到具体时间共有多少秒。以我的FC9平台为例:1.使用date命令获得本地时间Mon Jan 5 21:06:48 CST 20092.将本地易理解的时间转化为UTC时间,使用date 命令,对该时间进行UTC格式化date +%s -d Mon Jan 5 21:06:48 CST 2009返回的结果是:1231160808 #自1970年1月1日0:00:00起到今天晚上21:06:48共1231160808秒1231160808这就是我们所说的UTC或者格林威治时间。 3.使用命令date将难以理解的UTC时间转化成为容易理解的本地时间在这里,我们随便将上面这个格林威治时间修改一下来进行转化即可,比如1231130828date -d 1970-01-01 UTC 1231130828 sec返回结果是:Mon Jan 5 12:47:08 CST 2009 #是今天中午12:47:084.使用date命令将本地时间进行格式化date +%X -d Mon Jan 5 12:47:08 CST 2009返回结果:12:47:08 PM date +%x +%X -d Mon Jan 5 12:47:08 CST 2009返回结果是:01/05/2009 12:47:08 PM date +%x %X %W -d Mon Jan 5 12:47:08 CST 2009返回结果:01/05/2009 12:47:08 PM 01 #01是星期一,如果是%w,返回的是1 date +%Y-%m-%d %H:%M:%S %W -d Mon Jan 5 12:47:08 CST 2009返回结果是:2009-01-05 12:47:08 01对UTC时间的进行格式化:date +%x %X -d 1970-01-01 UTC 1231130828 sec返回结果:01/05/2009 12:47:08 PMdate命令还有很多格式化的参数,功能很强大,大家可以使用man date或者info date来作参考。 1。 时间加减 这里处理方法,是将基础的时间转变为时间戳,然后,需要增加或者改变时间,变成 秒。 如:1990-01-01 01:01:01 加上 1小时 20分处理方法:a.将基础时间转为时间戳time1=$(date +%s -d 1990-01-01 01:01:01)echo $time1631126861 【时间戳】 b.将增加时间变成秒rootlocalhost # time2=$(1*60*60+20*60) rootlocalhost # echo $time24800 c.两个时间相加,计算出结果时间time1=$($time1+$time2)time1=$(date +%Y-%m-%d %H:%M:%S -d 1970-01-01 UTC $time1 seconds);echo $time11990-01-01 02:21:01 2。时间差计算方法 如:20
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国流体过滤压力筛项目投资可行性研究报告
- 2025标准合同终止商业店铺租赁协议范本
- 2025企业与个人借款合同范本简约版
- 马桶下水管行业深度研究报告
- 辣根行业深度研究报告
- 中国非标打印纸项目投资可行性研究报告
- 中国混凝土孔砖项目投资可行性研究报告
- 马铃薯预糊化淀粉行业深度研究报告
- 中国白云石开采项目投资可行性研究报告
- 二氧体保护焊丝行业深度研究报告
- 2025江苏南京玄武区招聘社区工作者和“两新”组织专职党务工作人员70人考试参考试题及答案解析
- 2025年初级会计考试(实务+经济法)真题试卷及参考答案(完整版)
- 2025至2030刚挠结合印刷电路板行业项目调研及市场前景预测评估报告
- 前列腺癌全程管理专家共识(2025版)
- 肾积水课件讲解
- 职业教育技能大赛指导手册
- 大货车安全事故教育培训课件
- 中信银行福州市晋安区2025秋招半结构化面试题库及参考答案
- 淋巴水肿诊疗技术
- 水电站信息化建设实施方案
- 工业管道安装验收技术规范汇编
评论
0/150
提交评论