Windows 10でテキストファイルの各行の先頭に行番号を付ける方法

Windows 10でテキストファイルの各行の先頭に行番号を付ける方法

Windows 10で、テキストファイルの各行の先頭に行番号を付加したい場合、表示上だけ行番号を付けるなら、サードパーティーのテキストエディタを利用する方法がありますが、テキストファイルそのものに行番号を付けたい場合は、コマンド操作で実現する方法があります。

そこでここでは、WindowsコマンドやPowerShellを使って、テキストファイルの各行の先頭に行番号を付加する方法を紹介します。

この記事は、以下の環境で実行した結果を基にしています。他のエディションやバージョンでは、動作結果が異なる場合があることをご了承ください。

ソフトウェアバージョン
Windows 10 Pro 64bit1909

テキストファイルに行番号を付加する

指定したテキストファイルの各行の先頭に行番号を付加する方法には、Windowsコマンドで行う方法と、PowerShellで行う方法があります。

  • findコマンドを利用する
  • findstrコマンドを利用する
  • PowerShellを利用する

ここでは、例として「E:\sample.txt」に対して行番号を付加して「E:\result.txt」として保存する方法を紹介します。

「E:\sample.txt」の内容は次のとおりで、文字コードは標準の「UTF-8」です。

Windows 10でテキストファイルの各行の先頭に行番号を付ける方法

findコマンドを利用する

findコマンドを利用して行番号を付加する場合は、コマンドプロンプトを起動して、次のようにコマンドを順に実行します。

> chcp 65001
> type sample.txt | find /v /n "" >result.txt

「result.txt」の内容は、次のとおりです。

Windows 10でテキストファイルの各行の先頭に行番号を付ける方法

findstrコマンドを利用する

findstrコマンドを利用して行番号を付加する場合は、コマンドプロンプトを起動して、次のようにコマンドを実行します。

> findstr /n /r ".*" sample.txt >result.txt

「result.txt」の内容は、次のとおりです。

Windows 10でテキストファイルの各行の先頭に行番号を付ける方法

PowerShellコマンドレットを利用する

PowerShellコマンドレットを利用して行番号を付加する場合は、PowerShellを起動して、次のようにコマンドを実行します。

PS> (Get-Content -Encoding UTF8 -Path "sample.txt") | ForEach-Object{"$($_.ReadCount) $_"} >result.txt

「result.txt」の内容は、次のとおりです。

Windows 10でテキストファイルの各行の先頭に行番号を付ける方法

あとがき

ちなみに、行番号を表示するだけなら「Mery」などのサードパーティーのテキストエディターで実現できます。

Windows 10でテキストファイルの各行の先頭に行番号を付ける方法

また、WSL環境があるなら、Linuxコマンド「nl」「cat」「less」を使って行番号を付加することもできるでしょう。