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

如何使用jq将日期+IP拼接的标准输出转换为指定键值对JSON结构?

解决方法:将split得到的数组转换为目标JSON对象

嘿,你已经搞定了最核心的拆分步骤,接下来只需要用jq的对象构造语法,把数组里的元素对应到指定的键上就可以啦!

完整命令

echo $(date)IP$(myip.sh) | jq -R 'split("IP") | {date: .[0], ip: .[1]}'

命令解释

  • split("IP"):这部分你已经在用了,它把输入的字符串按IP分割成一个包含两个元素的数组。
  • |:管道符,把前面split的结果传递给后面的处理逻辑。
  • {date: .[0], ip: .[1]}:这是jq的对象构造语法,.代表当前处理的数组,.[]通过索引取数组元素:
    • .0对应数组的第一个元素,也就是日期字符串,赋值给date键;
    • .1对应数组的第二个元素,也就是IP地址,赋值给ip键。

运行结果

执行这个命令后,你会得到完全符合需求的JSON结构:

{ "date": "Thu Jun 9 10:09:14 AM EDT 2022", "ip": "86.75.30.9" }

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.28 23:12:28