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

如何将jq结果中的GMT时间转换为GMT+09(KST)时区

如何将GMT时间转换为GMT+09(KST)时区?

原始输入的GMT时间为 2024-06-07 00:00:00,KST(韩国标准时间)比GMT快9小时,以下是两种实用的转换方法:

方法一:直接用jq处理(需jq 1.6及以上版本)

如果你的jq输出是包含date字段的JSON对象(例如{"date": "2024-06-07 00:00:00"}),可以通过jq的时间函数直接转换:

.date | strptime("%Y-%m-%d %H:%M:%S") | .hour += 9 | strftime("%Y-%m-%d %H:%M:%S")

步骤说明:

  1. strptime("%Y-%m-%d %H:%M:%S"):将字符串格式的日期解析为jq可操作的时间对象
  2. .hour += 9:给时间对象的小时数加上9(KST与GMT的时差),jq会自动处理跨天的日期进位(比如GMT 23:00加9小时会自动转为次日08:00)
  3. strftime("%Y-%m-%d %H:%M:%S"):将处理后的时间对象重新格式化为字符串

执行后得到的KST时间为 2024-06-07 09:00:00。

方法二:结合shell的date命令处理

如果你的jq版本不支持时间函数,或者更习惯用shell工具,可以先提取日期字符串,再用date命令转换:

示例命令(从JSON文件提取日期并转换):

jq -r '.date' input.json | xargs -I {} date -d "{} GMT +9 hours" +"%Y-%m-%d %H:%M:%S"

直接转换固定时间:

date -d "2024-06-07 00:00:00 GMT +9 hours" +"%Y-%m-%d %H:%M:%S"

步骤说明:

  • -d "{} GMT +9 hours":指定原始时间为GMT时区,并加上9小时偏移量
  • +"%Y-%m-%d %H:%M:%S":定义输出的日期格式

同样会得到结果 2024-06-07 09:00:00。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 15:52:11