man/info/--help を使い分ける - 公式情報の引き方

man/info/--help を使い分ける - 公式情報の引き方

この記事で解決できること

リナ: ターミナルでコマンドを打ってたら「あれ、このオプション何だっけ?」ってなって、毎回ネット検索してるんですよね...
ライニー先輩: 実はコマンドライン上で公式情報をすぐ調べられるんだよ。--helpmaninfo の3つを覚えると、たいていのことは自力で解決できるよ。

この記事では次の3つを学べる。

  • --helpmaninfo違いと使い分け が分かる
  • man ページの キー操作と検索方法 が身につく
  • コマンド名が思い出せないときの 探し方 が分かる

まずこれだけ覚えよう

  1. サッと確認したい → コマンド --help
  2. 詳しく読みたい → man コマンド
  3. コマンド名を探したい → man -k キーワード

1. --help: 一番手軽な確認方法

リナ: まず何から試せばいいの?
ライニー先輩: まずは --help をつけるだけでいいよ。ほぼ全てのコマンドで使えて、すぐ結果が出る。

使い方

ls --help
Usage: ls [OPTION]... [FILE]...
List information about the FILEs (the current directory by default).

  -a, --all                  do not ignore entries starting with .
  -A, --almost-all           do not list implied . and ..
  -l                         use a long listing format
  ...(以下省略)

出力が画面に収まらないときは less と組み合わせよう。

ls --help | less

q キーで終了できる。

-h で同じ結果が出るコマンドもある(例: curl -h)。どちらか試してみよう。

--help の特徴

項目 内容
速さ すぐ表示
情報量 簡潔(オプション一覧)
対応コマンド ほぼ全て
主な用途 オプション名・書式の確認

2. man: 公式マニュアルを読む

リナ: --help より詳しい情報が知りたいときは?
ライニー先輩: そのときは man コマンドだよ。Manual の略で、各コマンドの完全な仕様書が読める。

使い方

man ls

less と同じキー操作でページを読み進められる。

キー操作一覧

キー 動作
スペース / f 次のページ
b 前のページ
q 終了
/キーワード キーワードで検索(例: /recursive
n 次の検索結果
N 前の検索結果
g 先頭へ移動
G 末尾へ移動

/ による検索が一番便利。man chmod を開いて /octal と打つと、数値指定の説明にジャンプできる。

manページの構成

manページは決まったセクション構成になっている。

セクション 内容
NAME コマンド名と一行説明
SYNOPSIS 書式(使い方の雛形)
DESCRIPTION 詳細説明
OPTIONS 全オプションの説明
EXAMPLES 使用例(記載があるとき)
SEE ALSO 関連コマンド
リナ: SYNOPSIS の [OPTION]... とか [FILE]... って記号の意味がわからなくて...
ライニー先輩: [] は「省略してもOK」という意味で、... は「複数指定できる」という意味だよ。ls [OPTION]... [FILE]... は「オプションもファイルも 0 個以上指定できる」ということ。

セクション番号を指定する

同じ名前でコマンドと設定ファイルの両方にマニュアルがある場合、番号で区別できる。

man 1 passwd   # passwd コマンドのマニュアル
man 5 passwd   # /etc/passwd ファイルのマニュアル

よく使うセクション番号:

番号 内容
1 ユーザーコマンド(通常使うもの)
5 設定ファイルの書式
8 システム管理コマンド

3. man -k: コマンド名を探す

リナ: コマンド名が思い出せないときはどうするの?
ライニー先輩: man -k キーワード で探せるよ。やりたいことに関連する英単語で検索すると、候補が一覧で出てくる。
man -k compress
bzip2 (1)       - a block-sorting file compressor, v1.0.8
compress (1)    - compress and expand data
gzip (1)        - compress or expand files
xz (1)          - Compress or decompress .xz and .lzma files
zip (1)         - package and compress (archive) files

man -kapropos コマンドと同じ動作。どちらを使っても同じ結果が出る。

初回実行時に「nothing appropriate」と出たら、まず sudo mandb でデータベースを更新しよう。

4. info: GNU ツールの詳細情報

リナ: man があれば info は使わなくていい?
ライニー先輩: GNU プロジェクトのツール(grep / awk / find など)は info の方が詳しい場合があるんだ。man は概要、info は詳細な解説書というイメージかな。

使い方

info grep

キー操作

キー 動作
スペース 次のページ
b 前のページ
q 終了
n 次のノード(章)へ
p 前のノード(章)へ
u 上位ノード(目次)へ
Enter リンクをたどる

info がインストールされていない環境では man が代わりに表示されることがある。Ubuntu では sudo apt install info でインストールできる。

5. 練習してみよう

リナ: 習ったことを実際に試してみたい!
ライニー先輩: じゃあ次の問題をターミナルで試してみよう。

問題1: cp コマンドのオプション一覧を手軽に確認してみよう。

ヒントを見る

cp --help を実行すると、オプション一覧が表示される。

問題2: chmod のマニュアルを開いて、octal で検索してみよう。

ヒントを見る
  1. man chmod でマニュアルを開く
  2. /octal と入力して Enter
  3. 数値(8進数)による権限指定の説明にジャンプできる
  4. q で終了

問題3: man -k を使ってファイルの所有者を変更するコマンドを探してみよう。

ヒントを見る

man -k owner または man -k ownership を実行すると chown などが見つかる。

6. 使い分けのまとめ

リナ: 3つあって最初は混乱したけど、使い方がだいぶわかってきた!
ライニー先輩: よかった。最初は --helpman だけ覚えておけば十分だよ。man -kinfo は必要になったときに思い出してね。
やりたいこと 使うもの
オプション名をサッと確認 コマンド --help
コマンドの詳細な仕様を読む man コマンド
コマンド名が思い出せない man -k キーワード
GNU ツール(grep / awk)の詳細 info コマンド

よくある場面と対応

  • ls -la のオプションを確認 → ls --help
  • chmod の数値の意味を調べる → man chmod
  • ファイル圧縮コマンドを探す → man -k compress
  • awk の詳しい使い方 → info awk

次に読む