クラスを作ってみます。
クラスといってもメソッドの無い、POCOのようなクラスです。
Select-Object -InputObject (New-Object System.Object) -Property aaa, bbb, ccc
上の1行でObjectクラスを作って、Select-Objectで存在しないプロパティーを引くことでメンバーを作ってくれるみたいです。
構文的に良いのかどうか分からないですが、簡単なのでこんな風にやってます。
# メンバーに aaa, bbb, ccc を持つクラスを作成。 $o = Select-Object -InputObject (New-Object System.Object) -Property aaa, bbb, ccc Get-Member -InputObject $o $o.aaa = "aiueo" $o.bbb = 123 $o.ccc = Get-Date $o | Format-List Get-Member -InputObject $o
実行結果
(最初のGet-Memberの結果)
TypeName: Selected.System.Object
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
aaa NoteProperty aaa=null
bbb NoteProperty bbb=null
ccc NoteProperty ccc=null
(Format-Listの結果)
aaa : aiueo
bbb : 123
ccc : 2017/03/29 13:14:07
TypeName: Selected.System.Object
(最後のGet-Memberの結果)
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
aaa NoteProperty System.String aaa=aiueo
bbb NoteProperty System.Int32 bbb=123
ccc NoteProperty System.DateTime ccc=2017/03/29 13:17:39