date 命令是显示或设置零碎工夫与日期
很多 shell 脚本外面须要打印不同格局的工夫或日期,以及要依据工夫和日期执行操作。延时通常用于脚本执行过程中提供一段期待的工夫。日期能够以多种格局去打印,也能够应用命令设置固定的格局。在类 UNIX 零碎中,日期被存储为一个整数,其大小为自世界规范工夫(UTC)1970 年 1 月 1 日 0 时 0 分 0 秒起流逝的秒数。
命令性能
- date 能够用来显示或设定零碎的日期与工夫。
命令参数
- %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 秒 (选择性)
- 抉择参数:
- -d< 字符串 > 显示字符串所指的日期与工夫。字符串前后必须加上双引号。
- -s< 字符串 > 依据字符串来设置日期与工夫。字符串前后必须加上双引号。
- -u 显示 GMT。
- –help 在线帮忙。
- –version 显示版本信息
date -s
设置工夫
- date -s // 设置以后工夫,只有 root 权限能力设置,其余只能查看。
- date -s 20080523 // 设置成 20080523,这样会把具体工夫设置成空 00:00:00
- date -s 01:01:01 // 设置具体工夫,不会对日期做更改
- date -s“01:01:01 2008-05-23″ // 这样能够设置全副工夫
- date -s“01:01:01 20080523″ // 这样能够设置全副工夫
- date -s“2008-05-23 01:01:01″ // 这样能够设置全副工夫
- date -s“20080523 01:01:01″ // 这样能够设置全副工夫
加减
- date +%Y%m%d // 显示前天年月日
- date +%Y%m%d –date=”+1 day” // 显示前一天的日期
- date +%Y%m%d –date=”-1 day” // 显示后一天的日期
- date +%Y%m%d –date=”-1 month” // 显示上一月的日期
- date +%Y%m%d –date=”+1 month” // 显示下一月的日期
- date +%Y%m%d –date=”-1 year” // 显示前一年的日期
- date +%Y%m%d –date=”+1 year” // 显示下一年的日期
显示以后工夫
> date
Mon Mar 1 22:09:51 CST 2021
> date '+%c'
Mon 01 Mar 2021 10:10:13 PM CST
> date '+%D'
03/01/21
> date '+%x'
03/01/2021
> date '+%T'
22:12:48
显示日期和设定工夫
// 显示工夫
> date '+%c'
Mon 01 Mar 2021 10:16:41 PM CST
// 设定工夫
> date --date 08:42:00
Mon 01 Mar 2021 08:42:00 PM CST
显示工夫后跳行,再显示目前日期
> date '+%T%n%D'
22:21:01
03/01/21
显示以后工夫戳
> date +%s
工夫戳转换成工夫
date -d @工夫戳
>date -d @1614608735 +"%Y-%m-%d %H:%M:%S"
2021-03-01 22:25:35
工夫转换成工夫戳
> date -d "2020-10-11 11:11:11" +"%s
1602385871
date -d
参数应用
date 命令的另一个扩大是 -d 选项,该选项十分有用。应用这个功能强大的选项,通过将日期作为引号括起来的参数提供,您能够疾速地查明一个特定的日期。-d 选项还能够告诉您,绝对于以后日期若干天的到底是哪一天,从当初开始的若干天或若干星期当前,或者以前(过来)。通过将这个绝对偏移应用引号括起来,作为 -d 选项的参数,就能够实现这项工作。
- date -d “nov 22” 往年的 11 月 22 日是星期三
- date -d ‘2 weeks’ 2 周后的日期
- date -d ‘next monday’ (下周一的日期)
- date -d next-day +%Y%m%d(今天的日期)或者:date -d tomorrow +%Y%m%d
- date -d last-day +%Y%m%d(昨天的日期) 或者:date -d yesterday +%Y%m%d
- date -d last-month +%Y%m(上个月是几月)
- date -d next-month +%Y%m(下个月是几月)
- 应用 ago 指令,您能够失去过来的日期:
- date -d ’30 days ago’(30 天前的日期)
- 应用正数以失去相同的日期:
- date -d ‘dec 14 -2 weeks’(绝对:dec 14 这个日期的两周前的日期)
- date -d ‘-100 days’ (100 天以前的日期)
- date -d ’50 days'(50 天后的日期)
原文链接:https://rumenz.com/rumenbiji/…
微信公众号: 入门小站
linux 常用命令速查手册 PDF 下载
3669 页 vim 参考手册 PDF 下载
阿里云 ECS 运维 Linux 系统诊断 PDF 下载
Docker 速查手册 PDF 下载
Linux 学习笔记【强悍总结值得一看】PDF 下载
shell 扼要教程 PDF 下载