date命令
发表于:2024-11-23 作者:千家信息网编辑
千家信息网最后更新 2024年11月23日,date命令是显示或设置系统时间与日期。很多shell脚本里面需要打印不同格式的时间或日期,以及要根据时间和日期执行操作。延时通常用于脚本执行过程中提供一段等待的时间。日期可以以多种格式去打印,也可以
千家信息网最后更新 2024年11月23日date命令语法
选项
参数
日期格式字符串列表
实例
date命令是显示或设置系统时间与日期。
很多shell脚本里面需要打印不同格式的时间或日期,以及要根据时间和日期执行操作。延时通常用于脚本执行过程中提供一段等待的时间。日期可以以多种格式去打印,也可以使用命令设置固定的格式。在类UNIX系统中,日期被存储为一个整数,其大小为自世界标准时间(UTC)1970年1月1日0时0分0秒起流逝的秒数。
语法
date(选项)(参数)
选项
-d<字符串>:显示字符串所指的日期与时间。字符串前后必须加上双引号;-s<字符串>:根据字符串来设置日期与时间。字符串前后必须加上双引号;-u:显示GMT;--help:在线帮助;--version:显示版本信息。
参数
<+时间日期格式>:指定显示时使用的日期时间格式。
日期格式字符串列表
%H 小时,24小时制(00~23)%I 小时,12小时制(01~12)%k 小时,24小时制(0~23)%l 小时,12小时制(1~12)%M 分钟(00~59)%p 显示出AM或PM%r 显示时间,12小时制(hh:mm:ss %p)%s 从1970年1月1日00:00:00到目前经历的秒数,(表示unix时间戳的秒数)%S 显示秒(00~59)%T 显示时间,24小时制(hh:mm:ss)%X 显示时间的格式(%H:%M:%S)%Z 显示时区,日期域(CST)%a 星期的简称(Sun~Sat)%A 星期的全称(Sunday~Saturday)%h,%b 月的简称(Jan~Dec)%B 月的全称(January~December)%c 日期和时间(Tue Nov 20 14:12:58 2012)%d 一个月的第几天(01~31)%x,%D 日期(mm/dd/yy)%j 一年的第几天(001~366)%m 月份(01~12)%w 一个星期的第几天(0代表星期天)%W 一年的第几个星期(00~53,星期一为第一天)%y 年的最后两个数字(1999则是99)
实例
格式化输出:
date +"%Y-%m-%d"2009-12-07
输出昨天日期:
date -d "1 day ago" +"%Y-%m-%d"2012-11-19
2秒后输出:
date -d "2 second" +"%Y-%m-%d %H:%M.%S"2012-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:00date -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/bashstart=$(date +%s)nmap man.linuxde.net &> /dev/nullend=$(date +%s)difference=$(( end - start ))echo $difference seconds.
获取当前时间的unix时间戳
date +%s
使用date命令获取一个特定时间的unix时间戳
上面演示的是获取2014年10月8号的unix时间戳
时间
日期
小时
格式
星期
字符
字符串
命令
输出
全称
参数
引号
系统
脚本
不同
普通
世界
两个
代表
传说
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
陕西云淼互联网科技有限公司
数据库数据到excel
数据库有很多字段有编码看不懂
利用网络技术不断提升教师
小学生网络安全怎样画
上海软件开发者费用
服务器维护一般是做什么
上海深圳东塔网络安全培训
广州数据库培训
无线传感器网络技术笔记
征途单机版数据库
罗湖区学软件开发
杭州机械备件管理软件开发
计算机等级三级网络技术知识点
十大网络安全培训机构排名
cms数据库文件
网警大队网络安全宣传
服务器进不去系统和安全模式
药物相关数据库有哪些
葫芦岛囤煌网络技术有限公司
商务软件开发考试题库
常见的计算机网络安全漏洞
原神都玩什么服务器
网络技术专科学什么专业好
网络安全技术教育培训机构
数据库原理课程考核
软件开发里程碑图表
it软件开发可零基础转行
数据库的五大阶段
网络安全工作遵循什么原则