もくじ
📝 はじめに
PowerShellで一覧データを扱っていると、
「全部で何件あるのか知りたい」
「数値の合計や平均を出したい」
と感じる場面はよくあります。
そんなときに使うのが
Measure-Object です。
この記事では、件数・合計・平均などを集計する基本的な使い方を、
初めての方でも理解しやすいように解説します。
- 一覧の件数を確認したい
- ファイルサイズの合計を出したい
- ログや数値データを集計したい
✅ このコマンドでできること(要点)
- 件数(Count)を簡単に取得できる
- 数値の合計・平均・最大・最小を計算できる
- 集計結果をオブジェクトとして扱える
- 他のコマンドと組み合わせて使える
✅ Measure-Object でできること
Measure-Object は、
パイプラインで渡されたデータを集計するためのコマンドです。
単純な件数確認から、
数値データの統計情報を取得する用途まで幅広く使われます。
考え方としては、「流れてきたデータを数える・計算する」役割です。
🧩 基本構文
Measure-Object
Measure-Object -Property プロパティ名 -Sum -Average -Maximum -Minimum
何も指定しなければ件数のみ、
プロパティを指定すると数値計算が行えます。
▶ 基本的な使い方(まずこれだけ)
🔹 件数を確認する
Get-Process | Measure-Object
Count に表示される数値が件数です。
この値が表示されていれば、正しく集計できています。
🔹 ファイル数を数える
Get-ChildItem | Measure-Object
フォルダ内のファイル・フォルダの合計数を確認できます。
🛠 よく使われる指定例
🔹 数値プロパティの合計を出す
Get-ChildItem | Measure-Object Length -Sum
ファイルサイズの合計が
Sum として表示されます。
🔹 平均・最大・最小を同時に取得する
Get-Process | Measure-Object CPU -Average -Maximum -Minimum
CPU使用率の統計情報をまとめて確認できます。
💼 実務でよく使う使用例(応用)
🔹 条件付きで件数を集計する
Get-Process | Where-Object CPU -gt 10 | Measure-Object
条件に一致するプロセスの件数だけを集計できます。
この結果が出ていれば問題ありません。
🔹 拡張子ごとの合計サイズを確認する
Get-ChildItem | Group-Object Extension | ForEach-Object {
$_.Group | Measure-Object Length -Sum
}
- Where-Object で条件抽出してから集計
- Group-Object と併用して分類集計
- Select-Object で結果を整形
🧩 よくある勘違い・つまずきポイント
- 数値以外のプロパティは計算できない
- 何も指定しないと件数のみが取得される
- 結果はオブジェクトとして返ってくる
- 表示結果だけ見て使い方を誤解しやすい
- 単位(バイトなど)は自分で換算が必要
🔄 cmdとの違いについて
cmdでは件数や合計を出すには
find /c などを使う必要があります。
PowerShellの Measure-Object は、
数値を理解したうえで集計できる点が大きな違いです。
⚠ エラー・うまく動かないときの確認ポイント
- 集計対象のプロパティが数値かどうか
- プロパティ名の指定が正しいか
- パイプラインの前段が正しく動作しているか
- 空の結果になっていないか
🧠 注意点
Measure-Object の結果はそのまま表示すると分かりにくいことがあります。
実務では Select-Object で
必要な値だけを取り出して使うことが多いです。
📌 まとめ
- Measure-Object は件数や合計を集計する基本コマンド
- 数値データの統計情報を簡単に取得できる
- 他のコマンドと組み合わせることで実務に強くなる
- 次は Group-Object と併用すると集計の幅が広がる
🔎 PowerShellコマンドを探す
やりたいことからコマンドを探せます。
- ファイルを削除したい
- 一覧を表示したい
- 文字列を検索したい
- 条件で絞り込みたい
- エラーや実行できない原因を調べたい
- 件数を確認したい
- 合計や平均を計算したい
