PowerShellでテキストファイルの行数をカウントする方法|wcコマンドの代替手段を紹介

目次

スポンサードリンク

Linuxにはファイルの行数をカウントする wc コマンド(Word count)があります。Windowsでは wc コマンドは使えませんが、PowerShellには代替手段があります。この記事では、PowerShellでテキストファイルの行数をカウントする方法を解説します。

最もシンプルに行数をカウントする方法

PowerShellでテキストファイルの行数をカウントする方法は複数ありますが、この方法が一番、シンプルに行数を取得できます。

PS C:\Users\username> cat list | measure


Count    : 417
Average  :
Sum      :
Maximum  :
Minimum  :
Property :

cat は Get-Content コマンドのエイリアスです。measure は Measure-Object のエイリアスです。 Get-Content はファイル内容を1行ずつ配列の要素として返します。Measure-Object で配列の行数を取得しています。

行数の数値部分だけ取得する方法

下記例ではcatコマンドの結果を()で囲み、配列のCountプロパティを参照して行数を取得しています。スクリプトファイルの中で行数の数値部分だけ参照したいときは、こちらのコマンドが最適です。

PS C:\Users\username> (cat list).Count 
417

空行を除いた行数を取得する方法

Measure-Object コマンドに -Line オプションを指定して実行すると、空行を除去し他行数を取得することができます。

PS C:\Users\username> cat list | Measure-Object -Line

Lines Words Characters Property
----- ----- ---------- --------
278

まとめ

Windows環境でもPowerShellを使えばテキストファイルの行数を簡単にカウントすることができます。状況に応じて .Count や Measure-Object を使い分けましょう。


コマンドプロンプトのポケットリファレンス:Windows11対応版
Windows環境で開発やシステム管理を行うエンジニアにとって、コマンドプロンプトの知識は非常に重要なスキルセットです。こちらの書籍は初心者にもわかりやすく網羅的です。手元に置いておきたい一冊です。

PowerShellの基礎を一通り学べるおすすめ書籍