ディレクトリのみ、ファイルのみの一覧を表示する方法 †PowerShellでディレクトリのみ、ファイルのみの一覧を表示する実行例を以下に記します。 関連記事 †本記事と同等の内容でCSV出力している記事です。 PowerShellで各ファイルやディレクトリのセキュリティ情報を取得する記事です。 ディレクトリのみの一覧を表示する †Get-ChildItem, Where-Objectコマンドレットを使うことにより、簡単にディレクトリのみを表示することができます。 PSIsContainerを使用 †ディレクトリの場合、PSIsContainerはTrueが返却されます。 Get-ChildItem * | Where-Object { $_.PSIsContainer } Where-Objectは?と記述することもできます。 Get-ChildItem * | ? { $_.PSIsContainer } Test-Pathコマンドレットを使用 †Test-Pathの場合、-PathType containerを使用します。 Get-ChildItem * | Where-Object { (Test-Path -PathType container $_) -eq $True } Where-Objectは?と記述することもできます。 Get-ChildItem * | ? { (Test-Path -PathType container $_) -eq $True } サブフォルダも対象にしたい場合 †サンプルは、Get-ChildItemの対象を*にしています。 Get-ChildItem -Recurse * | ? { $_.PSIsContainer } フルパスで表示したいのであれば、以下のようにできます。 Get-ChildItem -Recurse * | ? { $_.PSIsContainer } | % { $_.FullName } ディレクトリ数を確認したい †上記で取得したディレクトリ数を表示したい場合は、以下のようになります。 Get-ChildItem * | ? { $_.PSIsContainer } | Measure-Object 数字のみを取得 (Get-ChildItem * | ? { $_.PSIsContainer } | Measure-Object).Count サブフォルダも対象にしたい場合は、Get-ChildItemの-Recurseオプションを使用します。 ファイルのみの一覧表示 †Get-ChildItem, Where-Objectコマンドレットを使うことにより、簡単にファイルのみを表示することができます。 PSIsContainerを使用 †ファイルの場合、PSIsContainerはFalseが返却されます。 Get-ChildItem * | Where-Object { ! $_.PSIsContainer } Where-Objectは?と記述することもできます。 Get-ChildItem * | ? { $_.PSIsContainer } Test-Pathコマンドレットを使用 †Test-Pathの場合、-PathType containerを使用します。 Get-ChildItem * | Where-Object { (Test-Path -PathType container $_) -eq $False } Where-Objectは?と記述することもできます。 Get-ChildItem * | ? { (Test-Path -PathType container $_) -eq $False } サブフォルダも対象にしたい場合 †サンプルは、Get-ChildItemの対象を*にしています。 Get-ChildItem -Recurse * | ? { ! $_.PSIsContainer } フルパスで表示したいのであれば、以下のようにできます。 Get-ChildItem -Recurse * | ? { ! $_.PSIsContainer } | % { $_.FullName } ファイル数を確認したい †上記で取得したディレクトリ数を表示したい場合は、以下のようになります。 Get-ChildItem * | ? { ! $_.PSIsContainer } | Measure-Object 数字のみを取得 (Get-ChildItem * | ? { ! $_.PSIsContainer } | Measure-Object).Count サブフォルダも対象にしたい場合は、Get-ChildItemの-Recurseオプションを使用します。 その他 †この資料では、以下のようにしてフルパスを取得しています。 $_.FullNmae または、以下のようにSelect-Objectでも可能です。 Select-Object FullName 以上、Powershellでディレクトリ一覧のみ、ファイル一覧のみを表示する方法でした。 |