当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 如何在 PowerShell 中编辑 JSON 文件(带有示例)

作者:精品下载站 日期:2024-12-14 04:40:23 浏览:13 分类:玩电脑

如何在 PowerShell 中编辑 JSON 文件(带有示例)


通常,您可能希望使用 PowerShell 编辑 JSON 文件中的值。

以下是如何执行此操作的示例:

$file = Get-Content my_teams.json -raw | ConvertFrom-Json
$file | % {if($_.Location -eq 'Dallas'){$_.Name='Mavs'}}
$file | ConvertTo-Json -depth 32 > new_teams.json

以下是这个特定示例的作用:

  • 首先,检索名为 my_teams.json 的 JSON 文件
  • 接下来,对于文件的 Location 字段中等于“Dallas”的每个值,将 Name 字段中的相应值更新为等于“Mavs”
  • 最后,将这些更改输出到名为 new_teams.json 的新 JSON 文件中

注意:使用ConvertTo-Json深度的默认值为2,但我们指定深度为32 是为了避免由于嵌套 JSON 不够深而可能出现的任何问题。

以下示例展示了如何在实践中使用此语法。

示例:如何在 PowerShell 中编辑 JSON 文件

假设我们有一个名为 my_teams.json 的 JSON 文件,其中包含有关各个篮球队的信息。

我们可以使用以下语法来查看该文件的内容:

Get-Content my_teams.json

以下屏幕截图显示了如何在实践中使用此语法:

[玩转系统] 如何在 PowerShell 中编辑 JSON 文件(带有示例)

假设我们要查找文件的 Location 字段中等于“Dallas”的所有值,并将 Name 字段中的相应值更改为“Mavs” ' 反而。

我们可以使用以下语法来执行此操作:

$file = Get-Content my_teams.json -raw | ConvertFrom-Json
$file | % {if($_.Location -eq 'Dallas'){$_.Name='Mavs'}}
$file | ConvertTo-Json -depth 32 > new_teams.json

以下屏幕截图显示了如何在实践中使用此语法:

[玩转系统] 如何在 PowerShell 中编辑 JSON 文件(带有示例)

请注意,当我们使用 Get-Content cmdlet 查看名为 new_teams.json 的新文件的内容时,我们可以看到“Mavericks”已重命名为“Mavs”在文件的第一个名称字段中。

注意:您可以在此处找到 PowerShell 中 ConvertTo-Json cmdlet 的完整文档。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯