00007 - Linux时间date命令详解
1、命令:date
2、命令功能:date 可以用来显示或设定系统的日期与时间。
3、命令参数
- -d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号;
- -s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号;
- -u:显示GMT;
- --help:在线帮助;
- --version:显示版本信息。
4、日期格式字符串列表
- %H 小时(以00-23来表示)。
- %I 小时(以01-12来表示)。
- %K 小时(以0-23来表示)。
- %l 小时(以0-12来表示)。
- %M 分钟(以00-59来表示)。
- %P AM或PM。
- %r 时间(含时分秒,小时以12小时AM/PM来表示)。
- %s 总秒数。起算时间为1970-01-01 00:00:00 UTC。
- %S 秒(以本地的惯用法来表示)。
- %T 时间(含时分秒,小时以24小时制来表示)。
- %X 时间(以本地的惯用法来表示)。
- %Z 市区。
- %a 星期的缩写。
- %A 星期的完整名称。
- %b 月份英文名的缩写。
- %B 月份的完整英文名称。
- %c 日期与时间。只输入date指令也会显示同样的结果。
- %d 日期(以01-31来表示)。
- %D 日期(含年月日)。
- %j 该年中的第几天。
- %m 月份(以01-12来表示)。
- %U 该年中的周数。
- %w 该周的天数,0代表周日,1代表周一,异词类推。
- %x 日期(以本地的惯用法来表示)。
- %y 年份(以00-99来表示)。
- %Y 年份(以四位数来表示)。
- %n 在显示时,插入新的一行。
- %t 在显示时,插入tab。
- MM 月份(必要)
- DD 日期(必要)
- hh 小时(必要)
- mm 分钟(必要)
- ss 秒(选择性)
5、实例
格式化输出:
- date +"%Y-%m-%d"
- 2015-12-07
输出昨天日期:
- date -d "1 day ago" +"%Y-%m-%d"
- 2015-11-19
2秒后输出:
- date -d "2 second" +"%Y-%m-%d %H:%M.%S"
- 2015-11-20 14:21.31
传说中的 1234567890 秒:
- date -d "1970-01-01 1234567890 seconds" +"%Y-%m-%d %H:%m:%S"
- 2009-02-13 23:02:30
普通转格式:
- date -d "2009-12-12" +"%Y/%m/%d %H:%M.%S"
- 2009/12/12 00:00.00
apache格式转换:
- date -d "Dec 5, 2009 12:00:37 AM" +"%Y-%m-%d %H:%M.%S"
- 2009-12-05 00:00.37
格式转换后时间:
- date -d "Dec 5, 2009 12:00:37 AM 2 year ago" +"%Y-%m-%d %H:%M.%S"
- 2007-12-05 00:00.37
加减操作:
- date +%Y%m%d #显示前天年月日
- date -d "+1 day" +%Y%m%d #显示前一天的日期
- date -d "-1 day" +%Y%m%d #显示后一天的日期
- date -d "-1 month" +%Y%m%d #显示上一月的日期
- date -d "+1 month" +%Y%m%d #显示下一月的日期
- date -d "-1 year" +%Y%m%d #显示前一年的日期
- date -d "+1 year" +%Y%m%d #显示下一年的日期
设定时间:
- date -s #设置当前时间,只有root权限才能设置,其他只能查看
- date -s 20120523 #设置成20120523,这样会把具体时间设置成空00:00:00
- date -s 01:01:01 #设置具体时间,不会对日期做更改
- date -s "01:01:01 2012-05-23" #这样可以设置全部时间
- date -s "01:01:01 20120523" #这样可以设置全部时间
- date -s "2012-05-23 01:01:01" #这样可以设置全部时间
- date -s "20120523 01:01:01" #这样可以设置全部时间
检查一组命令花费的时间:
- #!/bin/bash
- start=$(date +%s)
- nmap man.linuxde.net &> /dev/null
- end=$(date +%s)
- difference=$(( end - start ))
- echo $difference seconds.
同步时间:
输入ntpdate time.nist.gov同步网络时间
结果:3 Jun 15:42:39 ntpdate[4721]: adjust time server 211.115.194.21 offset -0.005885 sec
出现上述结果代表时间同步成功,上面的大致意思为调整时间为服务器211.115.194.21的时间,相差-0.005885秒的时间
如果上面time.nist.gov、ntp.api.bz服务器同步不了,可以换下面几个时间服务器试试:
time.nist.gov
time.nuri.net
0.asia.pool.ntp.org
1.asia.pool.ntp.org
2.asia.pool.ntp.org
3.asia.pool.ntp.org
00007 - Linux时间date命令详解的更多相关文章
- linux系统date命令详解
Linux时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称RTC)时钟.系统时钟是指当前Linux Kernel中的时钟,而硬件时钟则是主板上由电池供电的时钟, ...
- linux之date命令详解
date命令的用处 1.用于显示特殊的时间格式,可以用于对日志文件的命名 2.用于设置时间 ,不过这方面用的比较少,因为一般的服务器都设置的有自动同步网络时间 用法: date [OPTION]... ...
- linux下tar命令详解
linux下tar命令详解 tar是Linux环境下最常用的备份工具之一.tar(tap archive)原意为操作磁带文件,但基于Linux的文件操作机制,同样也可适用于普通的磁盘文件.ta ...
- 【转帖】Linux定时任务Crontab命令详解
Linux定时任务Crontab命令详解 https://www.cnblogs.com/intval/p/5763929.html 知道有crontab 以及 at 命令 改天仔细学习一下 讲sys ...
- Linux主要shell命令详解(上)
[摘自网络] kill -9 -1即实现用kill命令退出系统 Linux主要shell命令详解 [上篇] shell是用户和Linux操作系统之间的接口.Linux中有多种shell,其中缺省使用的 ...
- Linux定时任务Crontab命令详解_转
转自:Linux定时任务Crontab命令详解 (部分修改) linux 定时系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服 ...
- Linux部分常用命令详解(二)
date 命令详解 date命令可以按照指定格式显示日期,只键入date则以默认格式显示当前时间 例如: 如果需要以指定的格式显示日期,可以使用“+”开头的字符串指定其格式,详细格式如下: %n : ...
- Linux下ps命令详解 Linux下ps命令的详细使用方法
http://www.jb51.net/LINUXjishu/56578.html Linux下的ps命令比较常用 Linux下ps命令详解Linux上进程有5种状态:1. 运行(正在运行或在运行队列 ...
- linux之find命令详解
linux之find命令详解 查找文件find ./ -type f查找目录find ./ -type d查找名字为test的文件或目录find ./ -name test查找名字符合正则表达式的文件 ...
随机推荐
- Python——xlsxwriter模块的使用
xlsxwriter是用于制作Excel表格的 安装方法 40 wget https://pypi.python.org/packages/e4/63/e53deacc293c7fadf95b8404 ...
- idea使用的JDK版本1.9换成1.8后相关的更改设置
File——>Project Structure 一.查看Project中的jdk 1.检查Project SDK:中jdk 版本是否为1.8版本 2.检查Project language le ...
- 使用 loki grafana 分析nginx 请求日志
loki 是类似prometheus 的log 可视化展示.收集系统,已经集成在grafana 6.0 版本中了 说明: 测试环境使用了docker-compose 运行 环境准备 docker-co ...
- 无线模块 RXB12-315m TXB12-315M 应用
近期有个产品用到这对模块,因为没有什么技术支持,就直接上机调试.測试结果为带障碍发射距离60米. 下面是应用的几个知识点: 1:编程操作.事实上比較简单,调制信号315M是模块自带的,不须要调制和解调 ...
- Bjarne Stroustrup announces C++ Core Guidelines
This morning in his opening keynote at CppCon, Bjarne Stroustrup announced the C++ Core Guidelines ( ...
- [转]JDK动态代理
代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息.过滤消息.把消息转发给委托类,以及事后处理消息等.代理类与委托类之间 ...
- redis实现与分析-单机数据库实现
数据库 1,1个数据库数据结构和上面一样,两个字典,一个包含所有的键,一个包含了键的过期时间 2,redis删除过期键策略:定期+惰性 定期:一段时间开始删,删不全下次继续删 惰性:使用键的时候检察 ...
- VS2013 未找到与约束。。。
新建项目或打开项目时,VS2013 未找到与约束...问题: 解决方案:控制面板>程序>程序和功能 找到如下选中软件右击修复 即可(修复前需关闭VS2013)
- AI硬件 XPU
市场对人工智能的热情持续高涨,特别是硬件领域.人工智能将成为下一个大风口,首当其冲的就包括硬件, 在图像语音识别.无人驾驶等人工智能领域的运用层面,图形处理器 (GPU)正迅速扩大市场占比,而谷歌专门 ...
- sublime text2+Ctags+Cscope替代Source Insight
说明:以Windows系统下查看C++代码为例.因为Source Insight(以下简称SI)是收费软件,且界面丑陋,所以考虑其替代方案,发现Sublime Text3(以下简称ST3) + Cta ...