Отображение двух методов в конвейере - PullRequest
0 голосов
/ 22 февраля 2019

У меня есть этот oneliner, который переведет bookinpolicy календарей Outlook 365 из формата x.500 в реальное удобочитаемое имя:

((Get-CalendarProcessing dept-calendar-*).BookInPolicy | Get-DistributionGroup).name

Что я не могу понять, так это как отобразить оригинала название календаря?Прямо сейчас я получаю имена, но без ссылки на то, к какому календарю он относится, например:

dept-calendar-bookinpolicy-mgr
dept-calendar-bookinpolicy25-mgr
dept-calendar-bookinpolicy98-mgr

Я бы хотел, чтобы он выглядел примерно так:

dept-calendar-room1
dept-calendar-bookinpolicy-mgr

dept-calendar-room6
dept-calendar-bookinpolicy25-mgr

dept-calendar-room8
dept-calendar-bookinpolicy98-mgr

Ответы [ 2 ]

0 голосов
/ 23 февраля 2019

С небольшой помощью я смог найти способ сделать это, поэтому я решил ответить на свой вопрос:

(Get-CalendarProcessing dept-calendar-*) | ForEach-Object { $_ | Add-Member NoteProperty "BookInPolicy_Group" "" -Force; if(-not [String]::IsNullOrWhiteSpace($_.BookInPolicy)){$_.BookInPolicy_Group = ($_.BookInPolicy | Get-DistributionGroup).Name} Write-Output $_} | Select-Object Identity,BookInPolicy_Group | Format-List

Я смог получить то, что яхотел с выше.

Identity           : dept-calendar-room1
BookInPolicy_Group : dept-calendar-bookinpolicy-mgr

Identity           : dept-calendar-room6
BookInPolicy_Group : dept-calendar-bookinpolicy25-mgr

Identity           : dept-calendar-room8
BookInPolicy_Group : dept-calendar-bookinpolicy98-mgr

Надеюсь, это поможет следующему человеку.

0 голосов
/ 22 февраля 2019

Заключение в скобки похоже на использование Select-Object -ExpandProperty, поэтому вам придется вставить ForEach-Object

Get-CalendarProcessing dept-calendar-* | ForEach-Object{
   $_.BookInPolicy
  ($_.BookInPolicy | Get-DistributionGroup).Name
  ""
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...