読者です 読者をやめる 読者になる 読者になる

Powershellでファイルとフォルダの区別をする方法

Powershell

普通にPSIsContainerプロパティを使えばよい

#カレントディレクトリのフォルダだけを表示
> Get-ChildItem | Where-Object {$_.PSisContainer}

#同じくファイルだけを表示
> Get-ChildItem | Where-Object {$_.PSisContainer}

ちょっとした解説

PSIsContainerプロパティはオブジェクトがコンテナーの場合にTrue、そうでない場合はFalseになる。 Powershellにおけるコンテナーとは"オブジェクトを格納できるもの全般"のこと。 フォルダ、レジストリキーなどが該当する*1

*1:正式なドキュメントなどは見当たらず…試してみた範囲ではこの2つだった