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

如何用Nebius Cloud CLI+JQ提取文件夹名称与ID并生成标准JSON

问题描述

使用nebius-cloud-cli(yc命令)仅列出账号下所有网络对应的文件夹名称与ID时,执行以下命令:

yc vpc networks list --format json | jq ".[]"

得到的是多行独立的JSON对象(非标准JSON流):

{
  "id": "ccm979ujel7gpcq6aulc",
  "folder_id": "b489aa1fe17nphuomth8",
  "created_at": "2022-12-12T17:47:24Z",
  "name": "default",
  "description": "Auto-created network"
}
{
  "id": "ccmn8qvg1uaaaiblc05e",
  "folder_id": "b4aaav1fe1gnphuomth8",
  "created_at": "2022-12-29T12:07:40Z",
  "name": "my-network"
}
{
  "id": "campid2asepq3bc68fn6",
  "folder_id": "b489kv3ae1ga1huomth8",
  "created_at": "2021-12-18T09:54:01Z",
  "name": "my-nw",
  "description": "Auto-created network"
}

期望得到的标准JSON数组输出为:

[
  {"name": "default", 
   "folder_id": "b489aa1fe17nphuomth8"
  },
  {"name": "my-network", 
   "folder_id": "b4aaav1fe1gnphuomth8"
  },
  {"name": "my-nw", 
   "folder_id": "b489kv3ae1ga1huomth8"
  }
]

要求使用简单的转换方法,不使用bash重定向、awk这类工具。

解决方案

直接调整jq命令,无需拆分JSON结构,提取所需字段并重组为标准数组即可:

方法一(适配yc输出为标准JSON数组的情况)

如果yc vpc networks list --format json本身输出完整JSON数组,执行以下命令:

yc vpc networks list --format json | jq '[ .[] | {name, folder_id} ]'

方法二(适配yc输出为JSON Lines格式的情况)

如果yc输出的是多行独立JSON对象,使用jq的--slurp(简写-s)选项合并所有对象为数组,再提取目标字段:

yc vpc networks list --format json | jq -s 'map({name, folder_id})'

上述命令均会输出包含name和folder_id的标准JSON数组,完全满足需求且未使用禁止的工具。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 18:56:01