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

PowerShell如何将单条JSON的command字段值赋值给变量

解决方案

修改后的完整可运行代码如下:

$json = @"
{
"command": "restart"
}
"@

# 解析JSON为PowerShell自定义对象
$Response = ConvertFrom-Json -InputObject $json

# 提取command字段值赋值给$Command变量
$Command = $Response.command

# 输出查看取值结果(可选)
Write-Output $Command

# 匹配值执行对应逻辑
if ($Command -eq 'restart') {
    # 此处填写重启操作代码,例如重启本地系统可使用下方命令
    # Restart-Computer -Force
}

修改说明

  • 原代码的问题是没有从解析后的JSON对象中提取command属性,ConvertFrom-Json返回的是包含所有JSON字段的自定义对象,需要用对象.属性名的格式读取对应字段值
  • 优先使用PowerShell原生的-eq比较运算符替代Equals()方法,可避免变量为空时抛出空引用异常
  • 后续如果JSON是动态获取的,只需要把$json的赋值替换为实际拿到的JSON字符串即可,后续解析、取值、判断逻辑无需调整

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 18:39:00