gpt4 book ai didi

json - 如何使用powershell中的if条件在json文件中写入一个值?

转载 作者:行者123 更新时间:2023-12-02 23:35:01 25 4
gpt4 key购买 nike

我正在尝试使用 Powershell 在 key 对 json 文件中添加值。我收到一个错误。需要一些关于 PS 脚本的指导。

Powershell 5.1 版本和包含 key 对的 json 文件。

MYJSON 文件:

  {   "Theme":{"Res_List":  {
"Method": "POST",
"Name":""}}}

PowerShell 脚本:


$file_path="C:\Users\RelativeConfig.json"

$json = Get-Content $file_path | Out-String | ConvertFrom-Json

$timestamp = Get-Date -Format ddMMHHmm

$namevalue = 'resource'+$timestamp+'e3'
echo $namevalue ##prints resource16sep2019 I want this to write in json as value for Name Key
$files = $json | Get-Member -MemberType Properties | Select-Object - ExpandProperty Name

$result = Foreach ($file in $json)
{
if ($file.Name -eq "Name") { $file.Value = $namevalue}
}
$result | ConvertTo-Json | Set-Content $json

错误:

没有错误,但 json 没有用新值更新。

预期的:
{   "Theme":{"Res_List":  {
"Method": "POST",
"Name":"resource16sep2019 "}}}

实际的:
  {   "Theme":{"Res_List":  {
"Method": "POST",
"Name":""}}}

最佳答案

要更新您在 json 中的值,您可以执行以下操作

$bucket_name = "resource16sep2019"    ## I want this to write in json as value for Name Key

$json.Theme.Res_List.Name = $bucket_name

它将直接替换 $bucket_name Name 的值JSON 中的值。

如果要将其写入相应的文件,请使用以下命令,
$json | ConvertTo-Json -depth 32| set-content $file_path

希望能帮助到你!干杯

关于json - 如何使用powershell中的if条件在json文件中写入一个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57952866/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com