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

PowerShell中使用ConvertTo-Json时如何添加"data"块?

解决PowerShell中ConvertTo-Json添加"data": []块的问题

嘿,这个需求其实很容易实现——你只需要把现有的对象数组包装到一个包含data属性的新对象里,再进行JSON转换就可以了!

这里给你两种简单的实现方式:

方法一:使用[PSCustomObject]创建包装对象

这是最直观的方式,直接构造一个自定义对象,把你的$var数组赋值给它的data属性:

# 假设你的$var已经是目标对象数组
$wrappedResult = [PSCustomObject]@{
    data = $var
}

# 转换为你需要的JSON格式
$wrappedResult | ConvertTo-Json

方法二:利用哈希表快速转换

如果你喜欢更简洁的写法,也可以直接用哈希表来生成包装对象:

@{ data = $var } | ConvertTo-Json

补充说明:

如果你的对象有更深的嵌套结构,记得加上-Depth参数来避免JSON被截断(PowerShell默认的Depth是2),比如:

$wrappedResult | ConvertTo-Json -Depth 10

执行完上面的代码后,你就能得到想要的JSON格式:

{
"data": [
{
"controllerID": "0",
"DiskID": "0:1:0",
"cName": "PERCS130"
},
{
"controllerID": "0",
"DiskID": "0:1:1",
"cName": "PERCS130"
}
]
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 11:37:47