@kyanny's blog

My thoughts, my life. Views/opinions are my own.

man (manpage) の読み方のコツ

ソフトウェアに関わる仕事をし始めて*1そろそろ二十年経つが、最近ようやく man (manpage) の読み方が、というか読み方のコツがわかりかけてきた気がする。

あれは本のように頭から全部読もうとしてはだめで、辞書のように必要なところだけ都度読むもののようだ。たとえば、特定のオプションの機能とか。ただし、その部分はしっかり熟読する。できればメモをとったり Anki に入れたりして、覚える努力をするとよい。ここをおろそかにすると、一向に覚えられず何度も同じことを調べるはめになる。

それから、manpage 冒頭や大きなセクションごとの概要もできるだけ時間をとって熟読するとよい。そもそも何のためのコマンドか?をわかったつもりで理解してないことは意外に多い。理解してないものの使い方はろくに覚えられない。理解すれば覚えやすくなる。

時間が許せば調べたかった部分の周辺もじっくり読むとよい。セクション単位とか、似たような機能のオプションとか。ここでちゃんと読まずにあわててコマンドを実行してオプションの機能を試したりすると、理解せずただ使ってみただけでおわってしまい、結局無駄になる。

そして、man はページャ、大抵は less で読むので、less の操作に習熟しておくに越したことはない。つまり、まず読むべきは man less である。ページ送りや検索など、頻繁に行う操作は手なりでやれてしまうが、そういうのもあらためて読み直すと知らなかった基本的な操作があったりして、地味だが馬鹿にできない効率化につながる。LESS 環境変数のカスタマイズも効果的だ。

長年、長い manpage*2の途中にあるオプションを調べるときなどに、スムーズに掲載箇所にたどり着けなくてイライラしたり「他の人はもっと効率良いやり方を知っていて、こんな馬鹿みたいに毎回あたふたとページを行ったり来たりしてるのはおれだけなのではないか」と不安に思ったりしてきた。未だその疑念は晴れてはいないが、「多少面倒なのは仕方ない。ページャの操作に習熟しつつ紙の辞書のように『あのへんにあったはず*3』的なカンを培って効率化し、最終的には暗記して man を読む回数を減らす」を愚直にやっていくのが王道なのかな、という考えに至った。

*1:というか社会人になって

*2:curl とか

*3:F キーを 6 回、的な