フォルダー内のアイテムをカウントする方法(PowerShell を使用)

  1. PowerShell で Measure-Object コマンドレットを使用してフォルダー内のアイテムを数える
  2. PowerShell で Get-ChildItemCount プロパティを使用してフォルダー内のアイテムを数える
  3. PowerShell で foreach ループを使用してフォルダー内のアイテムを数える
  4. 結論
フォルダー内のアイテムをカウントする方法(PowerShell を使用)

PowerShell は、ファイルやフォルダーの作成、コピー、移動、削除、リスト表示など、さまざまなファイルおよびフォルダー操作をサポートしています。特定のフォルダーにどれだけのファイルとフォルダーが存在するかを知りたい場合があります。

PowerShell は、この作業を達成するためのいくつかの方法を提供しており、それぞれの利点と使用ケースがあります。その一つの方法が Measure-Object コマンドレットを使用することで、アイテムのプロパティを測定することでアイテムを数える簡単な方法を提供します。

この記事では、PowerShell でフォルダー内のアイテムを数えるために Measure-Object コマンドレットを利用する方法と、比較のための他の代替手段を探ります。

PowerShell で Measure-Object コマンドレットを使用してフォルダー内のアイテムを数える

Measure-Object コマンドレットは、特定のタイプのオブジェクトのプロパティの値を計算します。このコマンドレットを使用してオブジェクトを数えることができます。

また、数値の平均、合計、最小、最大、標準偏差も計算します。文字列オブジェクトの行数、単語数、文字数を数えることができます。

以下のコマンドは、path ディレクトリに存在するファイルとフォルダーの数をカウントします。フォルダー階層の最初のレベルにあるすべてのファイルとフォルダーをカウントします。

(Get-ChildItem 'path' | Measure-Object).Count

この例では、Get-ChildItem を使用して"path"にあるフォルダー内のすべてのアイテムを取得しています。このアイテムのコレクションは、その後 Measure-Object にパイプされ、さまざまなプロパティが計算されます。

アイテムをカウントすることに興味があるため、結果のオブジェクトの Count プロパティにアクセスして、フォルダー内のアイテムの合計カウントを提供します。

出力:

フォルダ内のアイテムをカウントするには、PowerShell を使用します - 出力 1

Count プロパティは、カウント値のみを表示します。

Count プロパティは、その名前が示すように、測定から得られたカウント値を単に表示します。

たとえば、ディレクトリ内のファイルのみをカウントしたい場合、Get-ChildItem-File パラメータを使用できます。このパラメータは、PowerShell にファイルのみのリストを取得するよう指示します。

(Get-ChildItem -File 'path' | Measure-Object).Count

このコマンドは、path ディレクトリ内に存在するファイルのカウントを計算します。この場合の出力は 11 で、見つかったファイルの合計数を示しています。

出力:

PowerShell でフォルダー内のアイテムをカウントする - 出力 2

同様に、フォルダーのみをカウントしたい場合は、-Directory パラメータを使用できます:

(Get-ChildItem -Directory 'path' | Measure-Object).Count

この例では、PowerShell は指定したディレクトリ内のフォルダーのみをカウントし、6 のカウントを返します。

出力:

フォルダー内のアイテムをカウントするための PowerShell - 出力 3

Get-ChildItem-Recurse パラメータは、指定された場所内のアイテムを再帰的に取得します。 -Recurse パラメータを使用して、ファイルとフォルダーを再帰的に数えることができます。

(Get-ChildItem -Recurse 'path' | Measure-Object).Count

このコマンドは、指定された場所内のすべてのファイルとフォルダーをカウントし、サブフォルダー内のものも含まれます。この場合の出力は 12082 で、再帰的に見つかったアイテムの合計カウントを示しています。

出力:

フォルダー内のアイテムをカウントする PowerShell - 出力 4

PowerShell で Get-ChildItemCount プロパティを使用してフォルダー内のアイテムを数える

フォルダー内のアイテムを数えることは、特にファイルやディレクトリを管理する際に PowerShell スクリプティングにおける基本的な操作です。この目的を達成するための簡単なアプローチの一つは、Get-ChildItem コマンドレットと Count プロパティを利用することです。

(Get-ChildItem -Path "path").Count

この例では、Get-ChildItem を使用して"path"にあるフォルダー内のすべてのアイテムを取得しています。Get-ChildItem から返されたアイテムのコレクションは、その後 .Count プロパティにパイプされ、フォルダー内のアイテムの合計カウントを提供します。

出力:

フォルダー内のアイテムをカウントする - 出力 5

PowerShell で foreach ループを使用してフォルダー内のアイテムを数える

フォルダー内のアイテムを数えることは、特にファイルやディレクトリを管理する際に PowerShell スクリプティングにおける基本的な操作です。この目的を達成するための簡単なアプローチの一つは、Get-ChildItem コマンドレットと Count プロパティを利用することです。

$folderPath = "path"
$count = 0
foreach ($item in (Get-ChildItem -Path $folderPath)) {
    $count++
}
$count

この例では、まず $folderPath 変数を定義して、アイテムを数えたいフォルダーのパスを保存します。カウンター変数 $count をゼロに初期化します。

次に、foreach ループを使用して、Get-ChildItem で取得したフォルダー内の各アイテムを繰り返します。遭遇した各アイテムについて、$count 変数をインクリメントします。

ループが完了した後、$count に保存されたアイテムの最終カウントを出力します。

出力:

フォルダー内のアイテムをカウントする - 出力 6

結論

PowerShell でフォルダー内のアイテムをカウントすることは、基本的なファイル管理から複雑な自動化ワークフローまで、多くのスクリプティングシナリオで重要なタスクです。Measure-ObjectGet-ChildItem などの多用途なコマンドレットと、foreach ループのような制御構造を活用することで、スクリプターはフォルダー内のアイテム数を効率的に判断できます。

各方法にはそれぞれの利点があり、スクリプターは特定の要件や好みに最も適したアプローチを選択できます。この記事から得た知識を活用して、PowerShell ユーザーはスクリプティングの取り組みでファイルとフォルダーのカウントタスクを自信を持って扱うことができます。

チュートリアルを楽しんでいますか? <a href="https://www.youtube.com/@delftstack/?sub_confirmation=1" style="color: #a94442; font-weight: bold; text-decoration: underline;">DelftStackをチャンネル登録</a> して、高品質な動画ガイドをさらに制作するためのサポートをお願いします。 Subscribe
著者: Rohan Timalsina
Rohan Timalsina avatar Rohan Timalsina avatar

Rohan is a learner, problem solver, and web developer. He loves to write and share his understanding.

LinkedIn Website

関連記事 - PowerShell Folder