man (Manual) 是 Linux 系統內建的線上參考手冊,涵蓋指令、系統呼叫、函式庫、裝置檔、設定檔格式、遊戲、協議標準、管理命令、核心介面等九大章節。熟練掌握 man 章節含義、頁面結構、鍵盤導航、搜尋與配置,能讓你在無網路環境下快速獲取權威技術細節。本文系統整理 man 使用精華。
| 章節 | 內容 | 典型範例 |
|---|---|---|
| 1 | 用戶指令 (Shell 命令、可執行程式) | man 1 ls, man 1 cp |
| 2 | 系統呼叫 (Kernel System Calls) | man 2 open, man 2 read |
| 3 | 函式庫呼叫 (Library Functions, 主要 C 標準庫) | man 3 printf, man 3 malloc |
| 4 | 裝置檔 (Special Files, /dev/*) | man 4 null, man 4 tty |
| 5 | 檔案格式與慣例 (Config Files, /etc/*) | man 5 passwd, man 5 fstab |
| 6 | 遊戲 | man 6 fortune |
| 7 | 慣例、協議、宏觀概念 (檔案系統、網路協議、ASCII) | man 7 hier, man 7 ip, man 7 ascii |
| 8 | 系統管理員指令 (Daemons, 服務管理) | man 8 systemctl, man 8 mkfs |
| 9 | 核心內部介面 (Kernel Routines, 文件較少) | man 9 kmalloc |
指定章節查詢:man 5 passwd 直接查設定檔格式,避免跳出 passwd(1) 指令頁。
NAME 指令/函式名稱 + 一行摘要
SYNOPSIS 語法原型 (選項、參數、互斥關係)
DESCRIPTION 詳細功能說明 (核心閱讀區)
OPTIONS 逐項選項詳解
COMMANDS 互動模式下的內部命令 (如 vim、top)
FILES 相關檔案路徑
SEE ALSO 相關手冊頁交叉引用
EXAMPLES 實用範例 (最實戰)
BUGS 已知問題
AUTHOR 作者/維護者
| 按鍵 | 動作 |
|---|---|
Space / Page Down / Ctrl+F | 下翻一頁 |
b / Page Up / Ctrl+B | 上翻一頁 |
Enter / j / ↓ | 下一行 |
k / ↑ | 上一行 |
d | 下翻半頁 |
u | 上翻半頁 |
g / Home | 跳至首行 |
G / End | 跳至末行 |
/pattern | 向下搜尋 (正則支援),n 下一個,N 上一個 |
?pattern | 向上搜尋 |
h | 顯示說明 |
q | 退出 |
man -k keyword # 搜尋 NAME 段落含 keyword 的所有頁面 (等同 apropos)
man -f command # 顯示指令對應的所有章節 (等同 whatis)
# 例:man -k ipta → 列出 iptables, iptables-save, iptables-restore 等
/etc/man_db.conf 或 /etc/manpath.config)
# 指定手冊頁搜尋路徑順序
MANPATH /usr/man
MANPATH /usr/local/man
MANPATH /opt/*/man
# 設置預設分頁器
PAGER less -isR
# 設置語系優先順序
MANPATH_MAP /bin /usr/share/man
MANPATH:手冊頁搜尋路徑 (冒號分隔)。MANPAGER / PAGER:指定分頁器 (預設 less -isR)。LANG / LC_ALL:手冊頁語系 (如 zh_TW.UTF-8)。man -t ls | ps2pdf - ls.pdf (需 ghostscript)。man -Hfirefox ls (需 man2html 或支援瀏覽器)。man -d ls 顯示除錯資訊含來源檔路徑,或直接 zcat /usr/share/man/man1/ls.1.gz。mypage.1 (groff/mdoc 格式) → mkdir -p ~/man/man1 && cp mypage.1 ~/man/man1/ → export MANPATH=~/man:$MANPATH。