DEV Community

Cover image for 🧭 Understanding the `man` Command in Linux
Farhad Rahimi Klie
Farhad Rahimi Klie

Posted on

🧭 Understanding the `man` Command in Linux

📘 Introduction

In the Linux world, the man command (short for manual) is one of the most powerful tools every user should know. It provides detailed documentation about other commands, configuration files, system calls, library functions, and more. Think of it as the built-in encyclopedia of Linux — whenever you’re unsure how a command works, man is your go-to helper.

⚙️ What Is the man Command?

The man command displays the manual pages (man pages) of commands and programs available on your system. These pages contain detailed information including:

  • Command syntax
  • Options and flags
  • Description and usage examples
  • Related commands

Every Linux command or utility has its own man page. For example:

man ls
Enter fullscreen mode Exit fullscreen mode

This opens the manual page for the ls command.


🧩 Syntax of man

man [OPTION] [SECTION] command_name
Enter fullscreen mode Exit fullscreen mode

Example:

man 1 ls
Enter fullscreen mode Exit fullscreen mode

This shows the manual for ls from section 1 (user commands).


📚 Understanding Manual Sections

Man pages are categorized into numbered sections based on the type of information they provide. Here’s what each section number means:

Section Description
1 User commands (executables and shell commands)
2 System calls (functions provided by the kernel)
3 Library calls (C library functions)
4 Special files (usually found in /dev)
5 File formats and conventions (configuration files)
6 Games and screensavers
7 Miscellaneous (macros, conventions, etc.)
8 System administration commands (root commands)
9 Kernel routines (non-standard)

Example:

If you want to read about the printf() function (C library function), not the shell command:

man 3 printf
Enter fullscreen mode Exit fullscreen mode

🔍 Useful Options of man

Option Description
-k keyword Search for a keyword in all man pages (same as apropos)
-f command Display a short description (same as whatis)
-a Display all man pages that match the command
-P pager Specify which pager program to use (like less or more)
-M path Specify the path to look for man pages
--help Show help for man command itself

Examples:

man -k network     # Show all pages related to "network"
man -f ls          # Short description of ls
Enter fullscreen mode Exit fullscreen mode

🧠 Navigating Inside a Man Page

When you open a man page, it uses a pager program (usually less). Here are the basic navigation keys:

Key Action
Space Move forward one screen
b Move backward one screen
Enter Move forward one line
/word Search for a keyword
n Jump to next search match
q Quit the man page

🧾 Structure of a Typical Man Page

Each man page generally follows a standard structure:

Section Description
NAME Command name and a short description
SYNOPSIS Syntax and command usage pattern
DESCRIPTION Detailed explanation of command
OPTIONS All available flags and arguments
EXAMPLES Example usages
SEE ALSO Related commands or functions

Example (man ls):

NAME
    ls - list directory contents
SYNOPSIS
    ls [OPTION]... [FILE]...
DESCRIPTION
    List information about the FILEs...
Enter fullscreen mode Exit fullscreen mode

💡 Practical Examples

1. Display help for the grep command:

man grep
Enter fullscreen mode Exit fullscreen mode

2. Find all commands related to “network”:

man -k network
Enter fullscreen mode Exit fullscreen mode

3. See the passwd file format (section 5):

man 5 passwd
Enter fullscreen mode Exit fullscreen mode

4. Display all available man pages for printf:

man -a printf
Enter fullscreen mode Exit fullscreen mode

🧭 How to Exit the man Page

To exit the manual viewer, simply press:

q
Enter fullscreen mode Exit fullscreen mode

🛠️ Troubleshooting

If man pages are missing or not found, you can install them using your distribution’s package manager.

For Ubuntu/Debian:

sudo apt install man-db
Enter fullscreen mode Exit fullscreen mode

For CentOS/RHEL:

sudo yum install man-db
Enter fullscreen mode Exit fullscreen mode

🏁 Conclusion

The man command is one of the most valuable tools for both beginners and advanced Linux users. Instead of searching online for every command’s usage, you can instantly access trusted, local documentation right from your terminal. By mastering man, you’ll become more self-sufficient and efficient when working in Linux.


📎 Quick Summary

Purpose Command
Open man page for ls man ls
Search by keyword man -k keyword
Short description man -f command
Specify section man 5 passwd
Quit man page Press q

Would you like me to make this article in Farsi (فارسی) too, with detailed explanations for your Linux tutorial videos?

Top comments (0)