tcl - 从 Tcl 中的年月格式字符串中提取时钟秒数
问题描述
我正在尝试在 Tcl 中提取格式为 YearMonth 这样的字符串的时钟时间。2020 年 1 月的“202001”。
% set value "202001"
% set clocktime [clock scan $value -format "%Y%m"]
1608537600
可以看到 Tcl 提取的纪元时间为 1608537600
如您所见,这是不正确的。如果我将该值转换回字符串值,它会在 2020 年 12 月返回
% clock format 1608537600 -format "%Y%m"
202012
我在这里做错了什么?
解决方案
在手册中指定(基本上是说“日期根据预处理格式字符串中存在的字段确定的部分。按优先顺序:...”)如果未指定日期,则日期将被视为当前日期。
由于提供的时钟值中缺少日期,时钟扫描将返回脚本运行的日期作为日期。您可以尝试使用该值运行它,2019
只要您在同一天执行,您将获得相同的结果。
为了避免这种情况,您可以做的是添加日期。附加01
到值和%d
格式字符串应该不会太难。
推荐阅读
- javascript - Angular Modulo 将迭代中的 3 个项目包装到一个 div 中
- r - R获取列的总和
- c - 错误的 malloc 分配
- android - 如何将页脚大小的图像添加到任何移动应用程序的底部?
- c++ - 更改makefile中变量的值
- c# - 为 SemaphoreSlim 实现 Starve 方法(“Unrelease”/“Hold”)
- html - Hugo HTML 模板的 Prettier & Visual Code 设置
- python - Led Blink 如何中断 time.sleep RPI
- node.js - 带有 express api 的空正文在 bcryptjs 时引发错误
- jquery - 如何使用过滤器选择器