使用powershell如何在json中删除属性synonymMaps。
{
"name": "dev-contentitem-text-index",
"defaultScoringProfile": null,
"fields": [
{
"name": "id",
"type": "Edm.String",
"searchable": false,
"filterable": false,
"retrievable": true,
"sortable": false,
"facetable": false,
"key": true,
"indexAnalyzer": null,
"searchAnalyzer": null,
"analyzer": null,
"synonymMaps": ""
},
{
"name": "myvalue",
"type": "Edm.String",
"searchable": false,
"filterable": false,
"retrievable": true,
"sortable": true,
"facetable": false,
"key": true,
"indexAnalyzer": null,
"searchAnalyzer": null,
"analyzer": null,
"synonymMaps": ""
}
]
}
我曾尝试删除synonymMaps,但我放弃了顶层属性名称和defaultScoringProfile。我需要完整的东西,但删除了synonymMaps。
$indexDefinition = Get-Content $storedIndex.FullName
$indexDefinition = ($indexDefinition| ConvertFrom-Json)
$indexDefinition.fields|Select-Object * -ExcludeProperty "*synonymMaps*"
这是一个嵌套的json结构,您需要为其提供递归功能: