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

如何在PowerShell中简洁地添加/更新JSON中的键?

解决方法

直接用Add-Member的-Force参数就能实现单次调用完成添加/更新操作:

$settings | Add-Member -Name 'foo' -Type NoteProperty -Value 42 -Force

原理说明

-Force参数是核心:

  • 若foo属性不存在,它会创建这个NoteProperty并赋值42;
  • 若foo属性已存在,它会直接覆盖原有值为42。

完全匹配你的需求——不管该键此前是否存在,操作后都能确保它带着指定值存在。

补充:简化属性存在性检查(若需自定义逻辑)

如果仍想自己封装逻辑,检查属性是否存在可以用更直观的写法:

if ('foo' -in $settings.PSObject.Properties.Name) {
    $settings.foo = 42
} else {
    $settings | Add-Member -Name 'foo' -Type NoteProperty -Value 42
}

不过显然Add-Member -Force的写法更简洁高效。

内容的提问来源于stack exchange,提问作者F-H

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 13:26:02