Windowsで、テキストファイルの各行の先頭に行番号を付加したい場合、表示上だけ行番号を付けるなら、サードパーティーのテキストエディタを使った方法がお手軽ですが、テキストファイルそのものに行番号を付けたい場合は、コマンド操作で実現する方法があります。
そこでここでは、WindowsコマンドやPowerShellを使って、テキストファイルの各行の先頭に行番号を付加する方法を紹介します。
目次
findコマンドを使った方法
ここでは、例として「E:\sample.txt」に対して行番号を付加して「E:\result.txt」として保存する方法を紹介します。
「E:\sample.txt」の内容は次のとおりで、文字コードは標準の「UTF-8」です。
findコマンドを使って行番号を付加する場合は、コマンドプロンプトを起動して、次のようにコマンドを順に実行します。
> chcp 65001
> type sample.txt | find /v /n "" >result.txt
「result.txt」の内容は、次のとおりです。
findstrコマンドを使った方法
findstrコマンドを使って行番号を付加する場合は、コマンドプロンプトを起動して、次のようにコマンドを実行します。
> findstr /n /r ".*" sample.txt >result.txt
「result.txt」の内容は、次のとおりです。
PowerShellコマンドレットを使った方法
PowerShellコマンドレットを使って行番号を付加する場合は、PowerShellを起動して、次のようにコマンドを実行します。
PS> (Get-Content -Encoding UTF8 -Path "sample.txt") | ForEach-Object{"$($_.ReadCount) $_"} >result.txt
「result.txt」の内容は、次のとおりです。
あとがき
ちなみに、行番号を表示するだけなら「Mery」などのサードパーティーのテキストエディターで実現できます。
また、WSL環境があるなら、Linuxコマンド「nl」「cat」「less」を使って行番号を表示することもできるでしょう。