Сравните объекты и экспортируйте разницу - PullRequest
0 голосов
/ 06 декабря 2018

Я хотел бы создать скрипт, который сравнивает настройки арендатора O365.Чтение их в порядке, теперь я хотел бы сделать что-то особенное.Связанный вопрос здесь, но нет ответа. Powershell Compare-Object и получение различий в файле

У меня уже есть файл json от обоих арендаторов, созданный как:

$srcTenant | Select-Object -Property * | ConvertTo-Json | Out-File "$targetfolder\$targetfile"

Теперь я хотел быфайл, который содержит только свойства, собранные с помощью сценария ниже:

Пока я:

$properties = ($srcTenant | Get-Member -MemberType Property | Select-Object -ExpandProperty Name)
$selectedproperties = @{}
$i = 0
foreach ($property in $properties) {
  if (Compare-Object $srcTenant $trgTenant -Property "$property") {
  $selectedproperties.Add($i, "$property")
  $i++
  }
}

Переменная $ selectedproperties содержит 9 свойств, и я хотел бы экспортировать только этот 9в том же формате, что и два других.

Имя Значение
---- -----
8 StorageQuotaAllocated
7 StorageQuota
6 ResourceQuotaAllocated
5 ResourceQuota
4 OwnerAnonymousNotification
3 OneDriveStorageQuota
2 DefaultLinkPermission
1 ConditionalAccessPolicy
0 AllowDownloadingNonWebViewableFiles

Итак, я ищу что-то вроде:

$srcTenant | Select-Object -Property (that 9 property above) | ConvertTo-Json | Out-File "$targetfolder\$targetfile
1029 *добиваться того же результата тоже приветствуются:)

1 Ответ

0 голосов
/ 06 декабря 2018

Select-Object -Property может принимать массив имен свойств.

см. первый пример здесь

...