Кратчайший синтаксис PowerShell для создания нового объекта PSObject с помощью свойства?

Я очень часто использую следующее:

New-Object psobject -Property @{a=1; b=2; c=3; d=4}

Я хотел бы сделать это как можно короче, возможно, даже 1 символ? Какой самый короткий способ создать новый psobject, используя свойства выше?

Я хочу, чтобы я мог сделать это с синтаксисом, подобным этому:

#{a=1; b=2; c=3; d=4}

Обратите внимание, что я заменил @ новым "специальным" символом.

Обратите внимание, если это считается не по теме, я перенесу его.

1 ответ

Решение

PowerShell 3 и более поздние версии поддерживают этот синтаксис:

[pscustomobject]@{a=1; b=2; c=3; d=4}

Одним из дополнительных преимуществ является то, что свойства упорядочены, в отличие от стандартного вызова New-Object.

Вы добавляете накладные расходы, но, вероятно, вы можете создать свой собственный ускоритель типов, который делает что-то похожее на pscustomobject, и использовать более короткое имя:) Хотя не уверен, что происходит под капотом pscustomobject.

Другие вопросы по тегам