web-dev-qa-db-ja.com

PowerShellのメンバータイプ(ScriptProperty、Property、およびNoteProperty)

ScriptProperty、Property、Method、NoteProperty、Alias、EventPropertyなどのPowerShellのメンバータイプは何ですか?

たとえば、CPUはScriptPropertyです。 ScriptPropertyとしてどのように分類できますか?

それらすべてについて簡単に説明したいと思います。

11
daniyalahmad

以前は、MSDNでPowerShell拡張型システムのすばらしい紹介がありました(残念ながら、PSH v1以降の変更により失われました)。

基本的に、PowerShellでは、基になる.NETオブジェクトを PSObject 型を介して追加のメンバーでラップできます。これは、いくつかの方法で実行できます。

  • Add-Memberを使用する(最大限の制御を与える)
  • Select-Objectのプロパティパラメータに名前ではなくハッシュを渡すことにより、追加のプロパティを指定する
  • New-Objectを使用してPSObjectを作成し、
  • .NETコード(C#、VB、…)では、基になるPSObjectプロパティと PSMemberInfo サブタイプを使用します。

さまざまなタイプの「拡張」メンバーは、次のようなPSMemberInfoサブタイプで表されます。

  • NoteProperty:.NETオブジェクトまたは値。
  • AliasProperty:別のプロパティのエイリアス(たとえば、コレクションにはCountプロパティとLengthプロパティの両方があり、一方が他方の別の名前である可能性があります)。
  • ScriptProperty:PowerShellで記述されたgetメソッドとsetメソッドを持つプロパティ。
  • CodeProperty:C#、VB、…で記述されたgetメソッドとsetメソッドを持つプロパティ。

などなど。

16
Richard

PSMemberTypes列挙ページ を参照してください

6
Shay Levy