You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用JQ工具从当前日期中减去6个月?

JQ实现当前日期减去6个月的方案

直接对日期字符串做减法很容易踩坑(比如跨年、不同月份天数差异),推荐用JQ的时间戳+日期数组来处理,步骤如下:

  1. 用now获取当前时间戳,通过localtime转成日期数组(格式:[年, 月, 日, 时, 分, 秒, 星期, 年内天数, 夏令时],注意月份是011对应112月)
  2. 对月份索引(数组第2位,索引1)减6
  3. 处理月份为负数的情况:如果月份小于0,逐年扣减年份,同时给月份加12,直到月份非负
  4. 用mktime把调整后的日期数组转回时间戳,再转成标准日期格式,最后提取日期部分

完整代码示例:

now
| localtime
| (.[1] -= 6)
| while .[1] < 0; do .[0] -= 1; .[1] += 12; end
| mktime
| todate
| split("T")[0]

如果需要处理UTC时间,把localtime换成gmtime即可。

内容的提问来源于stack exchange,提问作者juststartedcoding

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 17:03:14