Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

grepで何行目か知りたい場合、-nオプション

grepで何行目か知りたい場合、-nオプションです。

実際のところ

wikipediaのtimezoneの記事から、Japanの含まれる行を行番号つきで見たい場合

$ cat timezones.html | grep -n Japan
744:<td><span class="flagicon"><img alt="" src="//upload.wikimedia.org/wikipedia/en/thumb/9/9e/Flag_of_Japan.svg/23px-Flag_of_Japan.svg.png" width="23" height="15" class="thumbborder" srcset="//upload.wikimedia.org/wikipedia/en/thumb/9/9e/Flag_of_Japan.svg/35px-Flag_of_Japan.svg.png 1.5x, //upload.wikimedia.org/wikipedia/en/thumb/9/9e/Flag_of_Japan.svg/45px-Flag_of_Japan.svg.png 2x" data-file-width="900" data-file-height="600" />&#160;</span><a href="/wiki/Japan" title="Japan">Japan</a></td>
746:<td><a href="/wiki/UTC%2B09:00" title="UTC+09:00">UTC+09:00</a> (<a href="/wiki/Japan_Standard_Time" title="Japan Standard Time">JST</a>)</td>

といった塩梅になります。
前後行を表示するオプションとも併用できるため、grepの中から-nの前後3行を得る場合も次のようにできます

$ man grep | grep -3 -n "\-n"
//略
--
--
163-     -m num, --max-count=num
164-             Stop reading the file after num matches.
165-
166:     -n, --line-number
167-             Each output line is preceded by its relative line number in the
168-             file, starting at line 1.  The line number counter is reset for
169-             each file processed.  This option is ignored if -c, -L, -l, or -q
--
--
//略

参考もと