date命令详解与练习
date :
用来打印或设置系统日期和时间。
它在linux shell编程中经常会用到。比如每天生成随日期变化的档案名,尤其在银行业务中每天都会生成流水文件。eg:datefile=$(date "+%Y%m%d")
对于日期的计算在编程中也是有很多的应用。
下面,让我们详细了解下这个命令。
date [选项]... [+格式]
date [选项] [MMDDhhmm[[CC]YY][.ss]]
date常用选项
-d --date=STRING |
显示STRING指定的时间 |
-f --file=DATEFILE |
显示DATEFILE中每一行指定的时间 |
-r --reference=FILE |
显示FILE的最后修改时间 |
-s --set=STRING |
根据STRING设置时间 |
-u, --utc |
显示或设置全球时间 |
--help |
显示帮助文件并退出 |
--version |
显示版本信息并退出 |
FORMAT(输出格式)
%% |
显示为% |
%a |
当前区域星期几(简称) |
%A |
当前区域星期几(全称) |
%b |
当前区域月份简称 |
%B |
当前区域月份全称 |
%c |
当前区域的日期和时间 |
%d |
月份中的几号(两位) |
%D |
日期(mm/dd/yy) |
%e |
月份中的几号(去0) |
%h |
同%b |
%H |
小时(24小时制两位) |
%I |
小时(12小时制两位) |
%j |
一年中的第几天(3位) |
%k |
小时(24小时制去零) |
%l |
小时(12小时制去零) |
%m |
月份(两位) |
%M |
分钟数(两位) |
%n |
换行 |
%p |
当先时间是上午AM还是下午PM |
%r |
时间,按12小时制显示 |
%s |
从1970/1/1/0/0/0到现在经历的秒数 |
%S |
秒数(两位) |
%t |
水平方向的tab制表符 |
%T |
时间,按24小时制显示(hh:mm:ss) |
%U |
一年中的第几个星期(00-53)周天为开始 |
%V |
一年中的第几个星期(01-54)周一为开始 |
%w |
用数字表示星期几(0-6) |
%W |
一年中的第几个星期(00-53)周一为开始 |
%x |
按照(mm/dd/yy)显示当前日期 |
%X |
按照(%H:%M:%S)格式显示当前时间 |
%y |
年(后两位) |
%Y |
年(4位) |
%z |
根据RFC-822中指定的数字时区显示 |
%Z |
时区 |
修改系统时间
[linux@linux ~]$ su – root //切换的root用户 密码: [root@linux ~]# date //显示当前系统时间 2015年 05月 09日 星期六 18:35:30 CST [root@linux ~]# date -s "2015-05-31 10:56:45" //设置系统时间 2015年 05月 31日 星期日 10:56:45 CST [root@linux ~]# hwclock //查看硬件时间 2015年05月10日 星期日 18时56分48秒 -0.832548 seconds [root@linux ~]# hwclock –w //硬件时间与系统时间同步 [root@linux ~]# hwclock 2015年05月31日 星期日 10时57分15秒 -0.719662 seconds |
简单练习下 -d 参数
[root@linux ~]# date -d "next day" //可以用""包括 2015年 06月 01日 星期一 11:09:23 CST [root@linux ~]# date -d next-day //可以用-连接 2015年 06月 01日 星期一 11:09:35 CST [root@linux ~]# date -d next_day //不能用_连接,会解析成空格 date: 无效的日期"next_day" [root@linux ~]# date -d "-10 days" +%Y-%m-%d //显示10天前的日期 2015-05-21 [linux@linux ~]$ date -d 20150922 2015年 09月 22日 星期二 00:00:00 CST |
date命令参数很多,不需要全部记忆,但是关于时间的计算显示一定要想到date然后利用man帮助来解决问题。
本文版权归作者所有,欢迎转载,且在文章页面明显位置给出原文链接
date命令详解与练习的更多相关文章
- mac date命令详解
Mac下的date命令是BSD(Berkeley Software Distribution)系的,Linux下date命令是GNU(GNU's Not Unix)系,二者用法有一些区别. BSD并不 ...
- Linux date命令详解
1.显示时间 date命令可以按照指定格式显示日期,只键入date则以默认格式显示当前时间.如下: 如果需要以指定的格式显示日期,可以使用“+”开头的字符串指定其格式,详细格式如下: %n : 下一行 ...
- linux之date命令详解
date命令的用处 1.用于显示特殊的时间格式,可以用于对日志文件的命名 2.用于设置时间 ,不过这方面用的比较少,因为一般的服务器都设置的有自动同步网络时间 用法: date [OPTION]... ...
- date命令详解
基础命令学习目录首页 原文链接:https://www.cnblogs.com/qmfsun/p/4598650.html date "+今天是%Y-%d-%m,现在是%H:%M:%S&qu ...
- linux系统date命令详解
Linux时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称RTC)时钟.系统时钟是指当前Linux Kernel中的时钟,而硬件时钟则是主板上由电池供电的时钟, ...
- date 命令详解
date - print or set the system date and time Display the current time in the given FORMAT, or set th ...
- 00007 - Linux时间date命令详解
1.命令:date 2.命令功能:date 可以用来显示或设定系统的日期与时间. 3.命令参数 -d<字符串>:显示字符串所指的日期与时间.字符串前后必须加上双引号: -s<字符串& ...
- Shell date 命令详解
格式: date [选项] ... [+格式] 选项说明: -d ,--date=字符串 显示指定字符串所描述的时间 格式说明: 例子1: #!/bin/bash ##. 获取当前系统时间 YYYY- ...
- Linux常用命令详解(week1_day1_2)--技术流ken
本节内容 aliasunaliasunamesuhostnamehistorywhichwcwwhowhoamipingkillseqdudffreedate 命令详解 1. alias 设置.’查看 ...
随机推荐
- sublime每次打开时都提示升级,怎么取消这个弹出框?
答案其实很简单,设置如下: 进入Preferences -> Settings-User ,添加 "update_check": false 重启Sublime. 发现了什么 ...
- 字符串(扩展KMP):HDU 4333 Revolving Digits
Revolving Digits Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- 解决android启动程序时,会出现一个短暂的白色空白界面的问题
在启动的activity定义style为透明就可以了(android:theme="@android:style/Theme.Translucent")
- 关于cocos2d这个东西
我是在今年6月份左右接触到cocos2d这个东西的,当时就是想写个小游戏,结果买书的时候误打误撞就买了cocos2d的书. cocos2d是一个开源的游戏引擎,用于构建2d游戏,同时也可以用它写各种图 ...
- 控制uwsgi 的信号量
最近在用nginx+uwsgi+djano搭建一个网站,当.py文件修改后,如果不重启uwsgi,修改无法应用. 查了下uwsgi的相关文档 ,找到几个解决方案.顺便翻译下以备查看 启动服务 Star ...
- 分布式锁1 Java常用技术方案(转)
转:http://www.cnblogs.com/PurpleDream/p/5559352.html#3450419 前言: 由于在平时的工作中,线上服务器是分布式多台部署的,经常会面临 ...
- js提交前弹出提示框
<form target="_blank" name="f1" method="post" action="sub2.php ...
- 当在类中的 Parcelable 接口使用 ArrayList < customObject > android 系统: nullPointerException
我想使调用音乐使用 parcelable,所以我可以访问两个不同的活动中的音乐的实例的类.我不想使用可序列化的速度的目的.当我尝试将它使用传递时,我总是收到 nullPointerException: ...
- NETSH WINSOCK RESET这条命令的含义和作用?
简单来说netsh winsock reset命令含义是重置 Winsock 文件夹.假设一台机器上的Winsock协议配置有问题的话将会导致网络连接等问题,就须要用netsh winsock res ...
- When does layoutSubviews get called?
转自:http://blog.logichigh.com/2011/03/16/when-does-layoutsubviews-get-called/ It’s important to optim ...