「Man ページ」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(Pkg/AUR テンプレートの更新)
(3人の利用者による、間の11版が非表示)
1行目: 1行目:
 
{{Lowercase title}}
 
{{Lowercase title}}
[[Category:システム管理]]
+
[[Category:コマンドライン]]
[[ar:Man Page]]
+
[[ar:Man page]]
[[en:Man Page]]
+
[[en:Man page]]
[[es:Man Page]]
+
[[es:Man page]]
[[ko:Man Page]]
+
[[id:Man page]]
[[ru:Man Page]]
+
[[ko:Man page]]
[[zh-CN:Man Page]]
+
[[pt:Man page]]
  +
[[ru:Man page]]
  +
[[zh-hans:Man page]]
  +
{{Related articles start}}
  +
{{Related|コンソールのカラー出力#man}}
  +
{{Related articles end}}
 
'''man ページ''' ("マニュアルページ"の略) は Arch Linux を含む、ほとんどの主要な UNIX ライクなオペレーティングシステムで最初からインストールされているドキュメントです。man ページを表示するには {{Ic|man}} コマンドを使います。
 
'''man ページ''' ("マニュアルページ"の略) は Arch Linux を含む、ほとんどの主要な UNIX ライクなオペレーティングシステムで最初からインストールされているドキュメントです。man ページを表示するには {{Ic|man}} コマンドを使います。
   
 
man ページのカバーする範囲の如何を問わず、man ページは完結型のドキュメントとして作られており、必然的に、関連する話題を述べるときに他の man ページを参照するということが控えられています。このことはハイパーリンクを使用する info ファイルと対象的であり、GNU は info ファイルで伝統的な man ページ形式を置き換えようとしています。
 
man ページのカバーする範囲の如何を問わず、man ページは完結型のドキュメントとして作られており、必然的に、関連する話題を述べるときに他の man ページを参照するということが控えられています。このことはハイパーリンクを使用する info ファイルと対象的であり、GNU は info ファイルで伝統的な man ページ形式を置き換えようとしています。
  +
  +
''man'' で使用されるデフォルトのページャは [[Core Utilities#less|less]] です。
  +
  +
== インストール ==
  +
  +
{{Pkg|man-db}} パッケージに man コマンドが、{{Pkg|man-pages}} パッケージに基本的な man ページが入っています。いずれも {{Pkg|base}} [[メタパッケージ]]の依存関係として[[インストール]]されています。また、アプリケーションの man ページはそれぞれのパッケージの中に入っています。
  +
  +
各種プロジェクトにより翻訳された man ページもあります:
  +
  +
* {{Pkg|man-pages-cs}} チェコ語
  +
* {{Pkg|man-pages-de}} ドイツ語
  +
* {{AUR|man-pages-ja}} 日本語
  +
* {{Pkg|man-pages-zh_cn}} 中国語簡体字
  +
* {{Pkg|man-pages-zh_tw}} 中国語繁体字
   
 
== Man ページの表示 ==
 
== Man ページの表示 ==
26行目: 45行目:
 
# システム管理コマンド (通常は root 権限を必要とします) とデーモン
 
# システム管理コマンド (通常は root 権限を必要とします) とデーモン
   
基本的に Man ページはページの名前で呼ばれ、括弧で囲まれたセクション番号が後ろに付きます。man(1) と man(7) のように、同じ名前の man ページが存在することも時々あります。この場合は、man を呼び出すときにセクション番号と man ページの名前を指定します。例:
+
基本的に Man ページはページの名前で呼ばれ、括弧で囲まれたセクション番号が後ろに付きます。{{man|1|man}}{{man|7|man}} のように、同じ名前の man ページが存在することも時々あります。この場合は、man を呼び出すときにセクション番号と man ページの名前を指定します。例:
   
 
$ man 5 passwd
 
$ man 5 passwd
73行目: 92行目:
 
$ man -K password
 
$ man -K password
   
== man ページのカラー出力 ==
+
== ページ ==
  +
man ページの幅は {{Ic|MANWIDTH}} 環境変数で制御できます。
man ページのカラー出力を有効にすることで見た目をよくして中身を理解しやすくすることが可能です。man ページのカラー出力を行う方法は2つ存在します: {{Ic|less}} を使用する方法、または {{Ic|most}} を使用する方法。
 
   
  +
ターミナルのカラム数が小さすぎる場合 (例: ウィンドウの幅が小さい場合)、間違ったところで改行されることがあります。{{Ic|man}} を実行するときに MANWIDTH を設定することで読みやすくすることが可能です:
=== less を使う (推奨) ===
 
:<small>''ソース: [http://linuxtidbits.wordpress.com/2009/03/23/less-colors-for-man-pages/ Less Colors For Man Pages | Linux Tidbits]''</small>
 
この方法には {{Ic|less}} の方が {{Ic|most}} よりも機能が豊富だということ、そして man ページを見る時のデフォルトになっているという利点があります。
 
   
  +
{{Hc|~/.bashrc|<nowiki>
シェルの設定ファイルに以下を追加してください。[[Bash]] の場合:
 
  +
man() {
{{hc|~/.bashrc|
 
  +
local width=$(tput cols)
<nowiki>man() {
 
  +
[ $width -gt $MANWIDTH ] && width=$MANWIDTH
env LESS_TERMCAP_mb=$'\E[01;31m' \
 
LESS_TERMCAP_md=$'\E[01;38;5;74m' \
+
env MANWIDTH=$width \
LESS_TERMCAP_me=$'\E[0m' \
 
LESS_TERMCAP_se=$'\E[0m' \
 
LESS_TERMCAP_so=$'\E[38;5;246m' \
 
LESS_TERMCAP_ue=$'\E[0m' \
 
LESS_TERMCAP_us=$'\E[04;38;5;146m' \
 
 
man "$@"
 
man "$@"
 
}
 
}
 
</nowiki>}}
 
</nowiki>}}
 
(bash や linux を再起動しないで) Man ページに変更を適用するには、次を実行:
 
 
# source ~/.bashrc
 
 
[[Fish]] の場合、基本的な設定は以下の通りです:
 
{{hc|~/.config/fish/config.fish|
 
<nowiki>set -xU LESS_TERMCAP_mb (printf "\e[01;31m") # begin blinking
 
set -xU LESS_TERMCAP_md (printf "\e[01;31m") # begin bold
 
set -xU LESS_TERMCAP_me (printf "\e[0m") # end mode
 
set -xU LESS_TERMCAP_se (printf "\e[0m") # end standout-mode
 
set -xU LESS_TERMCAP_so (printf "\e[01;44;33m") # begin standout-mode - info box
 
set -xU LESS_TERMCAP_ue (printf "\e[0m") # end underline
 
set -xU LESS_TERMCAP_us (printf "\e[01;32m") # begin underline
 
</nowiki>}}
 
 
(fish や linux を再起動しないで) Man ページに変更を適用するには、次を実行:
 
 
# source ~/.config/fish/config.fish
 
 
色をカスタマイズするときは、[[Wikipedia:ANSI escape code]] を参照してください。
 
 
=== most を使う (非推奨) ===
 
'most' の基本的な機能は {{Ic|less}} や {{Ic|more}} と似ていますが、備えている機能の数はやや少なくなっています。most でカラー出力を使うように設定するのは less よりも簡単ですが、less のように most を使うには別の設定が必要になります。[[pacman]] を使って {{Pkg|most}} をインストールしてください:
 
# pacman -S most
 
 
{{ic|/etc/man_db.conf}} を編集して、ページャの定義をアンコメントして次のように変更:
 
DEFINE pager most -s
 
新しい設定は以下を入力することでテストできます:
 
$ man whatever_man_page
 
 
カラーの値を変更するには {{ic|~/.mostrc}} または {{ic|/etc/most.conf}} (システム全体に変更が適用されます) を編集する必要があります (ファイルが存在しない場合は作成してください)。{{ic|~/.mostrc}} の例:
 
% Color settings
 
color normal lightgray black
 
color status yellow blue
 
color underline yellow black
 
color overstrike brightblue black
 
{{Ic|less}} と同じようなキーバインドを使う例 (行ジャンプを 'J' に設定):
 
% less-like keybindings
 
unsetkey "^K"
 
unsetkey "g"
 
unsetkey "G"
 
unsetkey ":"
 
 
setkey next_file ":n"
 
setkey find_file ":e"
 
setkey next_file ":p"
 
setkey toggle_options ":o"
 
setkey toggle_case ":c"
 
setkey delete_file ":d"
 
setkey exit ":q"
 
 
setkey bob "g"
 
setkey eob "G"
 
setkey down "e"
 
setkey down "E"
 
setkey down "j"
 
setkey down "^N"
 
setkey up "y"
 
setkey up "^Y"
 
setkey up "k"
 
setkey up "^P"
 
setkey up "^K"
 
setkey page_down "f"
 
setkey page_down "^F"
 
setkey page_up "b"
 
setkey page_up "^B"
 
setkey other_window "z"
 
setkey other_window "w"
 
setkey search_backward "?"
 
setkey bob "p"
 
setkey goto_mark "'"
 
setkey find_file "E"
 
setkey edit "v"
 
 
=== xterm や rxvt-unicode で man ページのカラー出力 ===
 
 
:<small>''ソース: [http://pub.ligatura.org/fs/xfree86/xresources/xterm XFree resources file for XTerm program]''</small>{{Dead link|2013|09|10}}
 
 
{{Pkg|xterm}}/{{Ic|uxterm}} や {{Pkg|rxvt-unicode}} でマニュアルページを表示するときにカラーを追加したいときは {{ic|~/.Xresources}} を編集するのが簡単です。
 
 
==== xterm ====
 
修飾をカラーで''置き換える'':
 
 
*VT100.colorBDMode: true
 
*VT100.colorBD: red
 
*VT100.colorULMode: true
 
*VT100.colorUL: cyan
 
 
カラーと修飾 (太字や下線) を''同時に''使いたい場合:
 
 
*VT100.veryBoldColors: 6
 
 
{{ic|veryBoldColors}} の説明は {{ic|man xterm}} を見て下さい。
 
 
==== rxvt-unicode ====
 
URxvt.colorIT: #87af5f
 
URxvt.colorBD: #d7d7d7
 
URxvt.colorUL: #87afd7
 
 
次を実行:
 
$ xrdb -load ~/.Xresources
 
 
{{Ic|xterm/uxterm}} や {{Ic|rxvt-unicode}} を新しく起動すると man ページがカラフルになっているはずです。
 
This combination puts colors to '''bold''' and <u>underlined</u> words in {{Ic|xterm/uxterm}} or to '''bold''', <u>underlined</u>, and ''italicized'' text in {{Ic|rxvt-unicode}}. You can play with different combinations of these attributes (see the [http://pub.ligatura.org/fs/xfree86/xresources/xterm sources]{{Dead link|2013|09|10}} of this item).
 
   
 
== ローカルの man ページを読む ==
 
== ローカルの man ページを読む ==
211行目: 118行目:
   
 
=== ブラウザで表示できる HTML に変換する ===
 
=== ブラウザで表示できる HTML に変換する ===
==== mdocml ====
+
==== mandoc ====
[[AUR]] から {{AUR|mdocml}} をインストールします。例えば {{ic|free(1)}} のページを変換するなら:
+
{{Pkg|mandoc}} パッケージをインストールしてください。例えば {{ic|free(1)}} のページを変換するなら:
 
$ gunzip -c /usr/share/man/man1/free.1.gz | mandoc -Thtml -Ostyle=style.css 1> free.html
 
$ gunzip -c /usr/share/man/man1/free.1.gz | mandoc -Thtml -Ostyle=style.css 1> free.html
   
240行目: 147行目:
   
 
=== PDF に変換する ===
 
=== PDF に変換する ===
man ページは基本的に印刷ができるようになっています。man ページは troff で書かれており、troff はもともと組版言語だからです。ghostscript をインストールしていれば、man ページを PDF に変換するのはとても簡単に行えます: {{ic|<nowiki>man -t <manpage> | ps2pdf - <pdf></nowiki>}}。どんな風になるかは [https://www.google.com/search?q=manpage+pdf+troff&num=100&hl=en&prmd=imvns&source=lnms&tbm=isch&sa=X&ei=5BZpUI3oH6rI2AXvx4CoAw&ved=0CAoQ_AUoAQ&biw=1321&bih=1100 google で画像検索] してみればわかります。これは万人向けとは言えないでしょう。
+
man ページは基本的に印刷ができるようになっています。man ページは troff で書かれており、troff はもともと組版言語だからです。{{Pkg|ghostscript}} をインストールしていれば、man ページを PDF に変換するのはとても簡単に行えます: {{ic|<nowiki>man -t <manpage> | ps2pdf - <pdf></nowiki>}}。どんな風になるかは [https://www.google.com/search?q=manpage+pdf+troff&num=100&hl=en&prmd=imvns&source=lnms&tbm=isch&sa=X&ei=5BZpUI3oH6rI2AXvx4CoAw&ved=0CAoQ_AUoAQ&biw=1321&bih=1100 google で画像検索] してみればわかります。これは万人向けとは言えないでしょう。
   
 
{{Note|基本的にフォントは決まったサイズの Times に制限されています。ハイパーリンクは存在しません。man ページによってはターミナルでの表示に特化されていることがあり、PS や PDF のような形だと上手くいかないことがあります。}}
 
{{Note|基本的にフォントは決まったサイズの Times に制限されています。ハイパーリンクは存在しません。man ページによってはターミナルでの表示に特化されていることがあり、PS や PDF のような形だと上手くいかないことがあります。}}
 
以下の perl スクリプトは man ページを PDF に変換して、PDF を {{ic|$HOME/.manpdf/}} ディレクトリにキャッシュし、PDF ビューア (特に {{Pkg|mupdf}}) を起動します。
 
 
{{hc|Usage: manpdf [<section>] <manpage>|<nowiki>
 
#!/usr/bin/perl
 
use File::stat;
 
 
$pdfdir = $ENV{"HOME"}."/.manpdf";
 
-d $pdfdir || mkdir $pdfdir || die "can't create $pdfdir";
 
$manpage = $ARGV[0];
 
chop($manpath = `man -w $manpage`);
 
die if $?;
 
 
$maninfo = stat($manpath) or die;
 
$manpath =~ s@.*/man./(.*)(\.(gz|bz2))?$@$1@;
 
$pdfpath = "$pdfdir/$manpath.pdf";
 
$pdftime = 0;
 
if (-f $pdfpath) {
 
$pdfinfo = stat($pdfpath) or die;
 
$pdftime = $pdfinfo->mtime;
 
}
 
if (!-f $pdfpath || $maninfo->mtime > $pdftime) {
 
system "man -t $manpage | ps2pdf -dPDFSETTINGS=/screen - $pdfpath";
 
}
 
die if !-f $pdfpath;
 
if (!fork) {
 
open(STDOUT, "/dev/null");
 
open(STDERR, "/dev/null");
 
exec "mupdf", "-r", "96", $pdfpath;
 
#exec "acroread", $pdfpath;
 
}
 
</nowiki>}}
 
   
 
== オンラインの Man ページ ==
 
== オンラインの Man ページ ==
 
man ページのオンラインデータベース:
 
man ページのオンラインデータベース:
*[http://man7.org/linux/man-pages/index.html Man7.org] Upstream for Arch Linux's {{pkg|man-pages}}.
+
* [http://man7.org/linux/man-pages/index.html man7.org] - Arch Linux {{pkg|man-pages}} で使われています。
  +
* [https://jlk.fjfi.cvut.cz/arch/manpages/ Arch Linux の man ページ] ([https://man.kusakata.com 日本語訳]) ArchWiki の[[テンプレート:Man|man ページ]] のリンク先です。
*[http://manpages.debian.net/ ''Debian GNU/Linux man pages'']
 
  +
* [https://manned.org/ manned.org の様々な Linux ディストリビューションや BSD などのマニュアルページ集]
*[http://leaf.dragonflybsd.org/cgi/web-man ''DragonFlyBSD manual pages'']
 
  +
* [https://linux.die.net/man/ linux.die.net]
*[http://www.freebsd.org/cgi/man.cgi ''FreeBSD Hypertext Man Pages'']
 
  +
* [https://man.cx/ man.cx]
*[http://www.manpages.spotlynx.com/ ''Linux and Solaris 10 Man Pages'']
 
*[http://linux.die.net/man/ ''Linux man pages at die.net'']
+
* [https://manpages.debian.org/ Debian GNU/Linux man ページ]
  +
* [https://manpages.ubuntu.com/ Ubuntu の manpage リポジトリ]
*[http://www.kernel.org/doc/man-pages/ The Linux man-pages project at kernel.org]
 
  +
* [https://leaf.dragonflybsd.org/cgi/web-man DragonFlyBSD マニュアルページ]
*[http://netbsd.gw.com/cgi-bin/man-cgi ''NetBSD manual pages'']
 
  +
* [https://www.freebsd.org/cgi/man.cgi FreeBSD の man ページ]
*[http://developer.apple.com/documentation/Darwin/Reference/ManPages/index.html ''Mac OS X Manual Pages'']
 
  +
* [http://netbsd.gw.com/cgi-bin/man-cgi NetBSD マニュアルページ]
*[http://unixhelp.ed.ac.uk/alphabetical/index.html ''On-line UNIX manual pages'']
 
*[http://www.openbsd.org/cgi-bin/man.cgi ''OpenBSD manual pages'']
+
* [https://www.openbsd.org/cgi-bin/man.cgi OpenBSD マニュアルページ]
  +
* [http://unixhelp.ed.ac.uk/alphabetical/index.html オンライン UNIX マニュアルページ]
*[http://man.cat-v.org/plan_9/ ''Plan 9 Manual — Volume 1'']
 
*[http://man.cat-v.org/inferno/ ''Inferno Manual — Volume 1'']
+
* [http://man.cat-v.org/plan_9/ Plan 9 マニュアル — Volume 1]
  +
* [http://man.cat-v.org/inferno/ Inferno マニュアル — Volume 1]
*[http://sfdoccentral.symantec.com/sf/5.0MP3/linux/manpages/index.html ''Storage Foundation Man Pages'']
 
*[http://www.unix.com/man-page/OpenSolaris/1/man/ ''The UNIX and Linux Forums Man Page Repository'']
+
* [https://www.unix.com/man-page/OpenSolaris/1/man/ UNIX Linux フォーラムの man ページリポジトリ]
*[http://manpages.ubuntu.com/ ''Ubuntu Manpage Repository'']
 
   
  +
{{Tip|DuckdDuckGo の [https://duckduckgo.com/bang.html !Bang] のひとつの {{ic|!archman}} により直接 Arch Linux の man ページを開けます。}}
 
{{Warning|ディストリビューションによっては、Arch が使っているのとは異なる man ページを使用していることがあります (パッチを適用していたり単純に古くなっているなど)。オンラインの man ページを使用するときはそのことに注意してください。}}
 
{{Warning|ディストリビューションによっては、Arch が使っているのとは異なる man ページを使用していることがあります (パッチを適用していたり単純に古くなっているなど)。オンラインの man ページを使用するときはそのことに注意してください。}}
   
301行目: 176行目:
 
以下は読む価値があるページの部分的なリストであり、様々なことを深く理解するのに役立ちます。リファレンスとして役立つページもあります (ascii テーブルなど)。
 
以下は読む価値があるページの部分的なリストであり、様々なことを深く理解するのに役立ちます。リファレンスとして役立つページもあります (ascii テーブルなど)。
   
  +
* {{man|7|ascii}}
* ascii(7)
 
  +
* {{man|7|boot}}
* boot(7)
 
  +
* {{man|7|charsets}}
* charsets(7)
 
  +
* {{man|1|chmod}}
* chmod(1)
 
  +
* {{man|7|credentials}}
* credentials(7)
 
  +
* {{man|5|fstab}}
* fstab(5)
 
  +
* {{man|7|hier}}
* hier(7)
 
  +
* {{man|1|systemd}}
* systemd(1)
 
  +
* {{man|1p|locale}}, {{man|5|locale}}, {{man|7|locale}}
* locale(1P)(5)(7)
 
  +
* {{man|3|printf}}
* printf(3)
 
  +
* {{man|5|proc}}
* proc(5)
 
  +
* {{man|7|regex}}
* regex(7)
 
  +
* {{man|7|signal}}
* signal(7)
 
  +
* {{man|5|term}}, {{man|7|term}}
* term(5)(7)
 
  +
* {{man|5|termcap}}
* termcap(5)
 
  +
* {{man|5|terminfo}}
* terminfo(5)
 
* utf-8(7)
+
* {{man|7|utf-8}}
   
他のページは、カテゴリ 7 ページを見て下さい:
+
他のページは、[http://man7.org/linux/man-pages/dir_section_7.html カテゴリ 7 (miscellaneous) ページ] を見て下さい:
 
$ man -s 7 -k ".*"
 
$ man -s 7 -k ".*"
   
 
Arch Linux 特有のページ:
 
Arch Linux 特有のページ:
  +
* {{man|5|alpm-hooks}}
* archlinux(7)
 
  +
* {{man|7|archlinux}}
* mkinitcpio(8)
 
  +
* {{man|3|libalpm}}
* pacman(8)
 
  +
* {{man|8|makepkg}}
* pacman-key(8)
 
* pacman.conf(5)
+
* {{man|5|makepkg.conf}}
  +
* {{man|1|makepkg-template}}
  +
* {{man|8|mkinitcpio}}
  +
* {{man|8|pacman}}
  +
* {{man|5|pacman.conf}}
  +
* {{man|8|pacman-conf}}
  +
* {{man|8|pacman-key}}
   
 
== 参照 ==
 
== 参照 ==
   
 
* [[一般的な推奨事項]] - Arch の一般的な推奨事項
 
* [[一般的な推奨事項]] - Arch の一般的な推奨事項
* [http://wiki.gentoo.org/wiki/Man_page man page - Gentoo Wiki] - Gentoo wiki の記事
+
* [https://wiki.gentoo.org/wiki/Man_page man page - Gentoo Wiki] - Gentoo wiki の記事
  +
* [https://linuxtidbits.wordpress.com/2013/08/21/wtfm-write-the-fine-manual-with-pod2man-text-converter/ Write The Fine Manual with pod2man]
  +
* [https://manpages.bsd.lv/history.html History of UNIX Manpages]

2020年12月31日 (木) 14:45時点における版

関連記事

man ページ ("マニュアルページ"の略) は Arch Linux を含む、ほとんどの主要な UNIX ライクなオペレーティングシステムで最初からインストールされているドキュメントです。man ページを表示するには man コマンドを使います。

man ページのカバーする範囲の如何を問わず、man ページは完結型のドキュメントとして作られており、必然的に、関連する話題を述べるときに他の man ページを参照するということが控えられています。このことはハイパーリンクを使用する info ファイルと対象的であり、GNU は info ファイルで伝統的な man ページ形式を置き換えようとしています。

man で使用されるデフォルトのページャは less です。

インストール

man-db パッケージに man コマンドが、man-pages パッケージに基本的な man ページが入っています。いずれも base メタパッケージの依存関係としてインストールされています。また、アプリケーションの man ページはそれぞれのパッケージの中に入っています。

各種プロジェクトにより翻訳された man ページもあります:

Man ページの表示

man ページを読むには、次を入力してください:

$ man page_name

マニュアルは複数のセクションに分類されています:

  1. 一般的なコマンド
  2. システムコール (カーネルによって提供されている関数)
  3. ライブラリコール (C ライブラリの関数)
  4. 特殊ファイル (通常は /dev 以下に存在します) とドライバー
  5. ファイルのフォーマットと規則
  6. ゲーム
  7. その他 (約束事など)
  8. システム管理コマンド (通常は root 権限を必要とします) とデーモン

基本的に Man ページはページの名前で呼ばれ、括弧で囲まれたセクション番号が後ろに付きます。man(1)man(7) のように、同じ名前の man ページが存在することも時々あります。この場合は、man を呼び出すときにセクション番号と man ページの名前を指定します。例:

$ man 5 passwd

上記のコマンドを実行すると passwd ユーティリティではなく、/etc/passwd についての man ページが表示されます。

whatis コマンドを使用することで man ページの一行説明を表示できます。例えば、ls の man ページセクションの簡単な説明を見るには、次を入力:

$ whatis ls
ls (1p)              - list directory contents
ls (1)               - list directory contents

形式

全ての Man ページは標準の書式に従って書かれており、読みやすいようになっています。よく出てくるセクションは以下の通り:

  • NAME - コマンドの名前、コマンドの使用目的について一行の説明。
  • SYNOPSIS - コマンドが受け付けるオプションや引数のリスト、または関数が使用するパラメータやヘッダーファイル。
  • DESCRIPTION - コマンドや関数の目的・動作に関する詳しい説明。
  • EXAMPLES - 一般的な例。シンプルなコマンドからやや複雑なコマンドまで様々。
  • OPTIONS - コマンドが受け付けるオプションの説明、何が変わるのか。
  • EXIT STATUS - 様々な終了コードの意味。
  • FILES - コマンドや関数に関連するファイル。
  • BUGS - 解決が棚上げされているコマンドや関数の問題。いわゆる既知のバグ。
  • SEE ALSO - 関連するコマンドや関数のリスト。
  • AUTHOR, HISTORY, COPYRIGHT, LICENSE, WARRANTY - プログラムに関する情報、プログラムの履歴、利用条件、開発者。

マニュアルの検索

man ユーティリティを使えば man ページを表示することはできますが、そもそも読みたいマニュアルページの名前を知らない場合に問題が起こります。幸いに、-k または --apropos オプションを使うことで、キーワードを指定してマニュアルページの説明文を検索することができます。

検索機能は専用のキャッシュを使っています。デフォルトでは、キャッシュが作成されていないために、何を検索しても該当するページは見つからないという結果になってしまいます。次を実行することでキャッシュを生成または更新することが可能です:

# mandb

新しい man ページをインストールしたら上のコマンドを実行するようにしてください。

キャッシュを作成したら検索をすることができます。例えば、"password" に関する man ページを検索するには:

$ man -k password

または:

$ man --apropos password

上記のコマンドは以下のように apropos コマンドを実行するのと同じです:

$ apropos password

デフォルトでは、指定したキーワードは正規表現として解釈されます。

ページ全体でキーワードが検索されるように細かく検索して欲しい場合、-K オプションを使います:

$ man -K password

ページ幅

man ページの幅は MANWIDTH 環境変数で制御できます。

ターミナルのカラム数が小さすぎる場合 (例: ウィンドウの幅が小さい場合)、間違ったところで改行されることがあります。man を実行するときに MANWIDTH を設定することで読みやすくすることが可能です:

~/.bashrc
man() {
    local width=$(tput cols)
    [ $width -gt $MANWIDTH ] && width=$MANWIDTH
    env MANWIDTH=$width \
    man "$@"
}

ローカルの man ページを読む

標準のインターフェイスの代わりに、lynxFirefox などのブラウザを使って man ページを見ることで info ページの利点 (ハイパーリンク) を得ることができます。

KDE ユーザーは次のようにして Konqueror で man ページを読めます:

man:<name>

他に、公式リポジトリには2つの選択肢があります:

1. xorg-xmanX で man ページをカテゴライズされた形で見ることができます。

2. GNOME のヘルプブラウザ yelp はさらに小奇麗な方法ですが依存パッケージが複数存在します。

ブラウザで表示できる HTML に変換する

mandoc

mandoc パッケージをインストールしてください。例えば free(1) のページを変換するなら:

$ gunzip -c /usr/share/man/man1/free.1.gz | mandoc -Thtml -Ostyle=style.css 1> free.html

free.html ファイルをお好きなブラウザで開いて下さい。

man2html

まず、公式リポジトリから man2html をインストールします。

そして、man ページを変換:

$ man free | man2html -compress -cgiurl man$section/$title.$section$subsection.html > ~/man/free.html

他の使い方として印刷しやすいように man2html でプレーンテキストにすることもできます:

$ man free | man2html -bare > ~/free.txt

man -H

Arch のリポジトリに入っている man の GNU 実装には HTML で表示する機能が付いています:

$ man -H free

使用されるブラウザは BROWSER 環境変数によって決まります。-H オプションにバイナリを渡すことで上書きできます。

roffit

AUR から roffitAUR をインストールしてください。

man ページを変換するには:

$ gunzip -c /usr/share/man/man1/free.1.gz | roffit > free.html

PDF に変換する

man ページは基本的に印刷ができるようになっています。man ページは troff で書かれており、troff はもともと組版言語だからです。ghostscript をインストールしていれば、man ページを PDF に変換するのはとても簡単に行えます: man -t <manpage> | ps2pdf - <pdf>。どんな風になるかは google で画像検索 してみればわかります。これは万人向けとは言えないでしょう。

ノート: 基本的にフォントは決まったサイズの Times に制限されています。ハイパーリンクは存在しません。man ページによってはターミナルでの表示に特化されていることがあり、PS や PDF のような形だと上手くいかないことがあります。

オンラインの Man ページ

man ページのオンラインデータベース:

ヒント: DuckdDuckGo の !Bang のひとつの !archman により直接 Arch Linux の man ページを開けます。
警告: ディストリビューションによっては、Arch が使っているのとは異なる man ページを使用していることがあります (パッチを適用していたり単純に古くなっているなど)。オンラインの man ページを使用するときはそのことに注意してください。

特筆すべき man ページ

以下は読む価値があるページの部分的なリストであり、様々なことを深く理解するのに役立ちます。リファレンスとして役立つページもあります (ascii テーブルなど)。

他のページは、カテゴリ 7 (miscellaneous) ページ を見て下さい:

$ man -s 7 -k ".*" 

Arch Linux 特有のページ:

参照