Как мне получить свойство Description в наборе по умолчанию Get-ADComputer?

#powershell

#powershell

Вопрос:

Как мне получить свойство Description в наборе по умолчанию Get-ADComputer? Мне нужно сделать это постоянным для всех сеансов (было бы здорово записать его в $profile).

Что я получаю:

 # get-adcomputer PC

DistinguishedName : CN=PC,OU=Computers,DC=myDC,DC=local
DNSHostName       : PC.local
Enabled           : True
Name              : PC
ObjectClass       : computer
ObjectGUID        : xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
SamAccountName    : PC$
SID               : S-x-x-xx-xxxxxx-xxxxxxx-xxxxxxx-xxxxx
UserPrincipalName :


# get-adcomputer PC -Property Description

Description       : Some box out there, lost in the corporate shenanigans
DistinguishedName : CN=PC,OU=Computers,DC=myDC,DC=local
DNSHostName       : PC.local
Enabled           : True
Name              : PC
ObjectClass       : computer
ObjectGUID        : xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
SamAccountName    : PC$
SID               : S-x-x-xx-xxxxxx-xxxxxxx-xxxxxxx-xxxxx
UserPrincipalName :
  

Чего я хочу:

 # get-adcomputer PC

Description       : Some box out there, lost in the corporate shenanigans
DistinguishedName : CN=PC,OU=Computers,DC=myDC,DC=local
DNSHostName       : PC.local
Enabled           : True
Name              : PC
ObjectClass       : computer
ObjectGUID        : xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx
SamAccountName    : PC$
SID               : S-x-x-xx-xxxxxx-xxxxxxx-xxxxxxx-xxxxx
UserPrincipalName :
  

Я использую Powershell 4.0 в Windows 8.1.

Ответ №1:

Один из вариантов — использовать $PSDefaultParameterValues

Добавьте это в свой профиль:

 $PSDefaultParameterValues['Get-ADComputer:Properties'] = 'Description'
  

Обратите внимание, что это фактически не изменяет значения по умолчанию, это просто приведет к тому, что «Description» будет значением по умолчанию параметра -Properties .

Если вы переопределите это, указав -Properties и не включите Description , его там не будет.

Ответ №2:

Согласно документации, доступной здесь, описание является частью расширенных свойств. Чтобы процитировать соответствующий абзац:

Многие командлеты Get-AD * Active Directory также поддерживают расширенные свойства. Они извлекаются только в том случае, если они указаны в параметре -Properties командлета. Многим расширенным свойствам также можно присвоить значения с помощью соответствующего командлета Set-AD*. Опять же, имена этих свойств могут совпадать или не совпадать с LDAPDisplayName соответствующего атрибута Active Directory.

Итак, я думаю, что единственный способ получить то, что вы хотите, — это определить свой собственный псевдоним.