Удаление объектов из JSON с помощью powershell

у меня есть файл test.json, который имеет следующую структуру:

{
  "name": "test",
  "class": "4",
  "exam": "test",
  "marks": "4"
}

я хочу удалить из него некоторые пары, такие как экзамен и класс, и в конечном итоге это должно выглядеть так, как показано ниже:

{
  "name": "test",
  "marks": "4"
}

как я могу сделать это из powershell?

Как сделать HTTP-запрос в Javascript?
Как сделать HTTP-запрос в Javascript?
В JavaScript вы можете сделать HTTP-запрос, используя объект XMLHttpRequest или более новый API fetch. Вот пример для обоих методов:
1
0
36
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

командная строка powershell:

$obj = Get-Content .\aaa.json | ConvertFrom-Json
$obj.psobject.properties.remove('exam')
$obj.psobject.properties.remove('class')
$obj | ConvertTo-Json

выход:

{
    "name":  "test",
    "marks":  "4"
}
Ответ принят как подходящий

В вашем посте не совсем понятно, хотите ли вы удалить определенные ключи или хотите сохранить только marks и name. Код ниже выполняет последнее:

Get-Content 'test.json' -Raw | 
    ConvertFrom-Json | 
    Select-Object name, marks | 
    ConvertTo-Json

Результат:

{
    "name":  "test",
    "marks":  "4"
}

Другие вопросы по теме