Get-ChildItem を使用してディレクトリのみを取得するにはどうすればいいですか? 質問する

Get-ChildItem を使用してディレクトリのみを取得するにはどうすればいいですか? 質問する

PowerShell 2.0 を使用しており、特定のパスのすべてのサブディレクトリをパイプ出力したいと考えています。次のコマンドはすべてのファイルとディレクトリを出力しますが、ファイルをフィルター処理する方法がわかりません。

Get-ChildItem c:\mypath -Recurse

$_.Attributesを使って属性を取得しようとしましたが、System.IO.FileAttributesそれを比較するためのリテラルインスタンスを構築する方法がcmd.exeわかりません。

dir /b /ad /s

ベストアンサー1

PowerShell 3.0 以降の場合:

Get-ChildItem -Directory

エイリアスdirls、 を使用することもできます。gci


PowerShell バージョン 3.0 未満の場合:

FileInfoによって返されるオブジェクトには、「Get-ChildItembase」プロパティがありますPSIsContainer。それらの項目のみを選択します。

Get-ChildItem -Recurse | ?{ $_.PSIsContainer }

ディレクトリの生の文字列名が必要な場合は、次のようにします。

Get-ChildItem -Recurse | ?{ $_.PSIsContainer } | Select-Object FullName

おすすめ記事