Loading [MathJax]/jax/output/HTML-CSS/jax.js

Linux时间取整技巧

简介: Linux时间取整技巧
发现问题
AI 代码解读

在学习前辈们代码的适合,发现了一段奇怪的代码于是研究了一下。
if [ "$VER" == "" ]; then

获得一天前的时间精确到秒

export ONE_DAY_AGO=$(date '+%Y-%m-%d %H:%M:%S' --date '1 days ago')

获得秒数再取整,这里就很奇怪了

export VER_UNIX_TS=(exprdated"{ONE_DAY_AGO}" +%s` / 60 / 5 * 60 * 5 )

根据秒数计算一个新的时间

export VER=(date+VER_UNIX_TS sec" -u)
fi
思考验证

仔细思考了一下,才意识到这是一种时间的取整技巧,可以获得当前时间最近的一个5min整数倍的时间节点。比如0:00、1:05、2:10、3:15这些时间点。
我用docker创建了一个容器来做测试,有linux机器的可以忽略
docker pull centos
docker run -it centos /bin/bash
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime -R修改系统时区

编写一个time_round.sh的shell脚本

!/bin/bash

export VER_UNIX_TS=(exprdated"{1}" +%s` / 60 / 5 * 60 * 5 )
export VER=(date+VER_UNIX_TS sec" -u)
echo $VER
随便测试了一些时间,结果跟预期的一样,得到的时间分钟都是5min的倍数。
图片.png
推广

回到之前那段奇怪的操作秒数 / 60 / 5 * 60 * 5, 其实秒数/60就化为分钟数了,再/ 5对应的当然就是按5min的倍数来取整。

那么15min就可以变为 秒数 / 60 / 15 \* 60 \* 15
如果是毫秒数的话再/1000和\* 1000就可以
再多一对/ 60和\* 60同样也可以推广到小时
总之,觉得比较有用就记录了一下。
AI 代码解读
相关实践学习
CentOS 8迁移Anolis OS 8
Anolis OS 8在做出差异性开发同时,在生态上和依赖管理上保持跟CentOS 8.x兼容,本文为您介绍如何通过AOMS迁移工具实现CentOS 8.x到Anolis OS 8的迁移。
目录
打赏
0
0
0
0
14
分享
相关文章
云原生|kubernetes|kubernetes集群部署神器kubekey的初步使用(centos7下的kubekey使用)
云原生|kubernetes|kubernetes集群部署神器kubekey的初步使用(centos7下的kubekey使用)
511 1
Linux tmp目录自动清理总结
在Linux系统中/tmp文件夹下的文件是会被清理、删除的,文件清理的规则是如何设定的呢? 以Redhat为例,这个主要是因为作业里面会调用tmpwatch命令删除那些一段时间没有访问的文件。   那么什么是tmpwatch呢?其实tmpwatch是一个命令或者说是一个包。
3699 0
NSEC和NSEC3
【10月更文挑战第18天】
291 1
【开发者必备】Spring Boot中自定义注解与处理器的神奇魔力:一键解锁代码新高度!
【8月更文挑战第29天】本文介绍如何在Spring Boot中利用自定义注解与处理器增强应用功能。通过定义如`@CustomProcessor`注解并结合`BeanPostProcessor`实现特定逻辑处理,如业务逻辑封装、配置管理及元数据分析等,从而提升代码整洁度与可维护性。文章详细展示了从注解定义、处理器编写到实际应用的具体步骤,并提供了实战案例,帮助开发者更好地理解和运用这一强大特性,以实现代码的高效组织与优化。
467 0
shell命令行并行神器 - parallel
GNU parallel 是一个 shell 工具,用于使用一台或多台计算机并行执行作业。作业可以是单个命令或必须为输入中的每一行运行的小脚本。典型的输入是文件列表、主机列表、用户列表、URL 列表或表列表。作业也可以是从管道读取的命令。 GNU parallel 然后可以拆分输入并将其通过管道并行传输到命令中。
513 0
ES查询的实时性问题详解
ES查询的实时性问题详解
1364 0
ES查询的实时性问题详解
java8 stream:检查list集合中是否存在某个值
java8 stream:检查list集合中是否存在某个值
836 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问