目录
基础概念
基础语法
打印当前日期
打印纪元时
将日期转换为纪元时
打印要求格式的日期
设置日期和时间
基础概念
Bash可以帮助我们以不同的格式打印日期、设置日期,又或根据日期或时间进行操作等。
在类Unix系统中,日期被存储为一个整数,其大小依照世界标准时间(UTC)1970年1月1日0时0分0秒起所耗费的秒数。这种计时方式称为纪元时或Unix时间。
基础语法
可以用不同的格式来输出、设置日期。
1) 打印当前日期
date
输出样例

2) 打印纪元时
date +%s
输出样例
![]()
3) 将日期转换为纪元时
date --date "Jul 09 2023" +%s
输出样例

若想从日期中知道是星期几,可以将后面的%s替换为%A,例如
date --date "Jul 09 2023" +%A
输出样例
![]()
转换内容可以参考下表,根据需要将日期进行转换
| 格式 | 转换内容 |
| %A / %a | 星期 |
| %I / %H | 小时 |
| %M | 分钟 |
| %S | 秒 |
| %N | 纳秒 |
| %y / %Y | 年 |
| %b / %B | 月 |
| %d | 日 |
| %D | 固定格式日期(mm/dd/yy) |
| 纪元时 | %s |
4) 打印要求格式的日期
date "+%Y %B %d"
输出样例

5) 设置日期和时间
date -s "09 July 2023 11:11:11"
输出样例
![]()
拓展:
有时程序上需要计算代码执行耗时,这个是可以通过date指令来完成的。例如想计算一段程序片段的执行耗时,我们可以编写以下代码:
start=$(date +%s) #start和end中间这一段填写代码指令 sleep 5 # 延迟5s end=$(date +%s) delta=$(( end - start)) echo -e "\nTime consumption is $delta seconds."执行效果:















![[工业互联-19]:如何在QT中增加SOEM主站](https://img-blog.csdnimg.cn/b6083a802c954b0f9bb57f1e992b2477.png)



