Categories: PowerShell

Как прочитать или изменить JSON файл с помощью PowerShell?

JSON это популярный текстовый формат представления и передачи данных. В PowerShell есть два командлета для работы с форматом данных JSON: ConvertFrom-Json и ConvertTo-Json . В этой статье мы покажем, как создать, прочитать, или изменить JSON объекты и сохранить их в файлы с помощью PowerShell.

Данные в формате JSON представлены в виде пар ключ : значение (допускается вложение свойств) Допустим, вы хотите записать данные в формате JSON в файл. Создайте объект с данными:

$obj = @{_x000D_ "Name" = "Dmitriy"_x000D_ "Roles" = @{_x000D_ "AD" = "Admin"_x000D_ "SQL" = "Report"_x000D_ }_x000D_ "Company" = "remontka"_x000D_}_x000D_

Теперь этот объект нужно преобразовать в формат JSON и сохранить в файл с расширением .json :

$json = $obj | ConvertTo-Json
$json | Set-Content -Path C:PSuserroles.json

Теперь вы можете прочитать JSON файл:

$json = Get-Content -Path C:PSuserroles.json -Raw | ConvertFrom-Json

Вы можете вывести все свойства объекта JSON:

$json|fl

Или получить значение определенного свойства в объекте JSON:

$json.roles.sql

Чтобы добавить новое свойство в объект JSON, воспользуйтесь командой Add-Member:

$json| Add-Member -MemberType NoteProperty -Name "Email" -Value " [email protected] "

Чтобы изменить одно значение в объекте JSON и сохранить его в файл, воспользуйтесь такими командами:

$json.roles.sql='Report'
$json|ConvertTo-Json| Set-Content -Path C:PSuserroles.json

Удалить одно из свойств в JSON объекте:

$json.PSObject.Properties.Remove("Email")

С помощью PowerShell командлета Invoke-WebRequest можно прочитать данные JSON с любого веб сайта. Например, нам нужно найти A записи для определенного сайта, которые возвращает DNS служба Google в формате JSON:

$site="remontka.com"
$rawresp=Invoke-WebRequest "https://dns.google/resolve?name=$site&type=A"
$rawjson = ConvertFrom-Json -InputObject $rawresp.Content
$rawjson.answer.data

admin

Share
Published by
admin

Recent Posts

Что такое Zulip

Zulip — программное обеспечение для реализации корпоративного чата. Разработан в 2012 году, в 2014 был…

2 месяца ago

Что такое Zookeeper

Zookeeper — cервис-координатор, который позволяет обеспечить контроль синхронизации данных. Разработан на Java компанией Apache Software…

2 месяца ago

Что такое Zimbra

Zimbra — программное обеспечение для реализации почтового сервиса или, если сказать точнее, автоматизации совместной деятельности…

2 месяца ago

Что такое Zabbix

Zabbix — бесплатная система мониторинга. Позволяет отслеживать состояние сетевых узлов, компьютеров и серверов. Возможности: Поддержка…

2 месяца ago

Что такое YouTube

YouTube — компания-владелец одноименного портала для просмотра и хранения видео. Чтобы пользоваться данным порталом достаточно…

2 месяца ago

Что такое yota

Yota — провайдер, предоставляющий доступ к сети Интернет по беспроводной связи. Впервые, сервис начал работать…

2 месяца ago