2

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

Пример:

Get-Date | Select -Property DayOfWeek

Выход:

DayOfWeek
---------
Saturday


Get-Date | Select -ExpandProperty DayOfWeek

Saturday

1 ответ1

2

вступление

Вы можете проверить любой объект в Powershell, передав его в командлет Format-List :

PS> Get-Date | Format-List

DisplayHint : DateTime
Date        : 2018-10-21 0:00:00
Day         : 21
DayOfWeek   : Sunday
DayOfYear   : 294
Hour        : 18
Kind        : Local
Millisecond : 28
Minute      : 38
Month       : 10
Second      : 36
Ticks       : 636757439160281486
TimeOfDay   : 18:38:36.0281486
Year        : 2018
DateTime    : 21 жовтня 2018 р. 18:38:36

Затем вы можете изменить объект, например. создать новый объект с подмножеством свойств исходного объекта. Это делается с помощью командлета Select-Object и списка необходимых свойств в параметре -Property .

Select-Object есть псевдоним по умолчанию Select , но я предлагаю, чтобы во время изучения Powershell и обмена вашим кодом с внешними сторонами, например. Superuser.com вы не используете псевдонимы, а только полные имена командлетов для ясности

Ответ

  • Get-Date | Select-Object -Property DayOfWeek создаст объект, который имеет только одно свойство DayOfWeek объекта, возвращаемого Get-Date

  • Get-Date | Select-Object -ExpandProperty DayOfWeek вернет строку с содержимым свойства DayOfWeek

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .