チップス

man オンラインマニュアルでコマンドの使い方を理解する


近年、Linux もGUI環境が充実して Microsoft Windows のように簡単に操作出きるようになっていますが、コマンドラインの使い方を覚える事が Linux をより効率よく使う近道です。

linux にはコマンドラインの使い方のマニュアルを参照する man コマンドが用意されています。man コマンドの使い方を知りたければ下記のように 'man 調べたいコマンド' でオンラインマニュアルを参照する事ができます。

$ man man

manページを日本語化する Ubuntu

$ sudo aptitude install manpages-ja

man コマンドで表示されるテキストを文字化けさせずにテキストファイルに

$ man hoge | col -b > hoge.txt

col コマンド manより

名前
col - 入力中にある逆改行コードを処理するフィルタ

書式
col [-bfpx] [-l num]

説明
col は、逆方向への改行および半改行を取り除き、通常の改行方向だけで出力可能なものに変換する。同時に、可能な限り空白文字部分をタブに置き換える処理をする。これは、 nroff(1) や tbl(1) の出力を処理するのに役立つ。

col は、データを標準入力から読み込み、標準出力に書き出す。

オプションとしては以下のものがある:

-b バックスペースを出力しないようにする。 (訳註: 同じ箇所に複数の文字が書かれる場合は) 行中のその箇所に最後に書かれた文字だけを表示する。

-f 半改行を含めることを許可する (‘‘fine’’ モード)。通常、行と行の境界に表示されることになる文字は、次の行に表示される。

-p 不明なコントロール文字を変更せずに表示する。通常 col は、以下に挙げるような認識・解釈できるコントロール文字でなければ、その文字を入力から取り除く。

-x タブのかわりに複数個の空白文字を出力する。

-lnum メモリ上に、少なくとも num 行分をバッファする。デフォルトでは 128行分がバッファされる。

col が認識する復帰動作のためのコントロール文字と、その文字の 10 進数での値を以下の表に示す:

ESC-7 逆方向に改行する (エスケープの後に 7)
ESC-8 逆方向に半改行する (エスケープの後に 8)
ESC-9 通常方向に半改行する (エスケープの後に 9)
backspace 逆方向に 1 カラム分戻す (8)。最初のカラムでは無視される
carriage return 行頭に復帰する (13)
newline 通常方向に改行する (10)。行頭への復帰も行う
shift in 通常の文字セットを選択する (15)
shift out 特別な文字セットを選択する (14)
space 通常方向に 1 カラム分に移動する (32)
tab 次のタブ位置へ移動する (9)
vertical tab 逆方向に改行する (11)

col が認識できないコントロール文字およびエスケープシーケンスは削除される。

col は文字列を読み込みながら追って行き、出力する際に正しいかを確認する。

すでに出力してしまった行を超えて戻るような逆改行の処理が入った場合、 colは警告メッセージを表示する。

関連項目
expand(1), nroff(1), tbl(1)

準拠
col ユーティリティは Single UNIX Specification, Version 2 に従う。 -l オ
プションは、この規格を拡張したものである。

履歴
col コマンドは Version 6 AT&T UNIX から登場した。

man コマンド man より

名前
man - オンラインマニュアルページを整形し表示する。
manpath - ユーザー個々のマニュアルページの検索パスを決める。

書式
man [-adfhktwW] [-m system] [-p string] [-C config_file] [-M path] [-P
pager] [-S section_list] [section] name ...

説明
man はオンライン・マニュアル・ページを整形し表示する。このバージョン の
man コマンドでは環境変数 MANPATH と (MAN)PAGER を設定できる。これにより
、個人的なマニュアルページを設定したり、整形したページを表示するプロ グ
ラ ムを好きに選べる。 section を指定すると、 man はマニュアルのそのセク
ションのみ探す。またコマンドライン・オプションや環境変数で、それぞれ の
セ クションを検索する順序や、ソース・ファイルに対してどんなプリプロセッ
サを用いるかを指定したりすることができる。 name に / が含まれているとき
man コマンドはまずファイル名として扱う。したがって man ./foo.5 または
man /cd/foo/bar.1.gz とさえできる。

オプション
-C config_file
使用する man.conf ファイルを指定する。デフォルトは /etc/man.con-
fig (参照: man.conf(5))

-M path
マニュアル・ページを探すディレクトリのリストを指定する。このオプ
ションを指定しない場合、環境変数 MANPATH を使う。この環境変数 も
指 定しないと、 /etc/man.config に指定されたデフォルトのリストを
使う。 MANPATH 中の空の文字列はデフォルトのリストを意味する。

-P pager
使用するページャーを指定 す る 。 デ フ ォ ル ト で は man は
/usr/bin/less-is を使う。このオプションは環境変数 MANPAGER より
優先する。この環境変数は PAGER よりも優先する。デフォル ト で は
man は /usr/bin/less-is を使用する。

-S section_list
コロンで分けられたリストで、マニュアルを探すセクションを指定する
。このオプションは環境変数 MANSECT より優先される。

-a デフォルトでは、man は見つかった最初のマニュアルページを表示した
あと終了する。このオプションを使うと、man は最初にみつかったもの
だけでなく name にマッチしたすべてのページを表示する。

-c 最新の cat 形式のページがあってもマニュアルページのソースを整 形
し なおす。このオプションは cat ページが端末と違った幅で整形され
ているときや壊れている場合などに有用である。

-d マニュアル・ページを表示せず、大量のデバッグ情報を出力する。

-D デバッグ情報とマニュアル・ページの両方を表示する。

-f whatis コマンドと同じ。

-h 1行ヘルプ・メッセージを表示して終了する。

-k apropos コマンドと同じ。 -K 「全ての」マニュアル・ページより指定
し た文字列を探す。警告: これは非常に遅いので セクションを指定し
た方が良い。(私のマシンでは、だいたいの目安として、500 ページ を
検索するのに 1分間かかる。)

-m system
別のシステムのマニュアル・ページを検索するように指定する。

-p string
nroff や troff のまえに実行するプリプロセッサの順番を指定する。
インストールの状態によってはフルセットのプリプロセッサが用意され
てないかもしない。いくつかのプリプロセッサとそれを指し示す文字は
次のとおり: eqn (e), grap (g), pic (p), tbl (t), vgrind (v),
refer (r)。このオプションは環境変数 MANROFFSEQ より優先される。

-t マニュアル・ページの整形に /usr/bin/groff -Tps -mandoc を使い、
stdout に出力する。 /usr/bin/groff -Tps -mandoc からの出力は印刷
するまえになんらかのフィルターなどを通す必要があるかもしれない。

-w or --path
マニュア・ルページを表示せず、すでにフォーマットまたは表示に使用
す るソース・ファイルの位置を表示する。引数を与えないと man がマ
ニュア・ルページを検索するディレクトリのリストを(標準出力に)表示
する。 manpath が man にリンクされているときは "manpath" は "man
--path" と同じになる。

-W -w に似ているが、ファイル名を追加情報なしに1行1つずつ表示す る
。これはシェル上で ,B "man -aW man | xargs ls -l" などと使うのに
便利である。

CAT ページ
man コマンドはすでに整形されたマニュアルページを、次にそのページが必 要
に な っ た と き の 整形時間の節約のために、保存しようとする。伝統的に
、DIR/manX の整形済みマニュアルは DIR/catX にセーブされるが、man ディレ
ク トリから cat ディレクトリへの他のマッピング方法を /etc/man.config に
指定できる。 cat ディレクトリが用意されてなかった場合、cat ページはセー
ブされない。

man コマンドをユーザー man に suid することができる。そのすると
cat ディレクトリのオーナーが man かつモードが 0755 (ユーザー man だけ
が書き込み可)で、cat ファイルのオーナーが man かつモードが 0644 また は
0444 ( ユーザー man だけが書き込み可、またはユーザーすべてが書き込み不
可) のとき、普通のユーザーは cat ページを変更したり他のファイル を cat
ディレクトリ置いたりすることができなくなる。 man コマンドが suid されて
いなければ、すべてのユーザーが cat ページを cat ディレクトリに置ける よ
うに、 cat ディレクトリのモードを 0777 にする必要がある。

cat ページがあったとしても、オプション -c をつけると強制的にマニュアル
ページを再整形する。

環境変数
MANPATH
MANPATH を設定すると、マニュアル・ページを探すときそのパスを使う

MANROFFSEQ
MANROFFSEQ を設定すると、nroff や troff の前に実行するプリプロセ
ッサを決定するのにその値を使う。デフォルトではマニュアルページは
nroff のまえにテーブル用のプリプロセッサに通される。

MANSECT
MANSECT を設定すると、その値を元にどのマニュアル・セクションを探
すかを決める。

MANWIDTH
MANWIDTH を設定すると、その値を表示するマニュアル・ページの幅 と
して使用する。指定しなかった場合には画面の幅一杯まで使用する。

MANPAGER
MANPAGER を設定すると、マニュアル・ページを表示するプログラムと
して使用する。指定しなかった場合には、 PAGER が使用される。ど ち
らも設定されていない場合には /usr/bin/less -is が使われる。

LANG LANG を設定すると、man コマンドその名前のサブディレクトリから最
初にマニュアル・ぺージを探す。それゆえ、’LANG=dk man 1 foo’ とコ
マ ンドラインから打つと、man コマンドはまず .../dk/man1/foo.1 を
探し、見つからなければ .../man1/foo.1 を探す。この ... はサー チ
パスのディレクトリである。

NLSPATH, LC_MESSAGES, LANG
環境変数 NLSPATH と LC_MESSAGES (また後者がないときは LANG )はメ
ッセージ・カタログの位置を指定する。 (英語のメッセージはコンパイ
ル時に組み込まれているので、英語の場合は
カタログは必要ない) man に呼び出される col(1) のような moプログ
ラムは 、たとえば LC_CTYPE 使うことに注意すること。

PATH PATH はマニュアル・ページのデフォルトの検索パスの構築に使われ る

SYSTEM SYSTEM はデフォルトのシステム名を得るのに使われる。 ( -m オプシ
ョンとともに使う)

関連項目
apropos(1), whatis(1), less(1), groff(1).

バグ
-t オプションは troff ライクなプログラムがインストールされている場合 の
み有効である。
も しハイフンのかわりに、点滅する \255 や が表示された場合には環境
変数に ’LESSCHARSET=latin1’ を設定すると良い。

(訳注: 日本語を使用する場合にはを使用するために、この方法では対応できな
い。groff のオプションで -Tnippon また -Tascii を使用すること。)

manコマンドの出力結果を日本語化する

普段使用しているUbuntu 12.04 LTS だと日本語表示されていなかったので、日本語表示するように設定します。.bashrcに次の行を追加した後、source .bashrcで環境変数を設定します。

MANPATH=/usr/bin/man:/usr/bin/X11/man/ja:/usr/local/man:/usr/share/man/ja
export MANPATH 
念のために
$ sudo apt-get install manpages-jaも実効。

参考URL

Linux入門:マニュアルページ(manコマンド)活用法のページがとても参考になりました。感謝です。
manページをテキストファイルにすると文字化けしてしまう


   チップス