Welcome to Part 13 of the LFCS Certification - Phase 1 series! You've mastered man pages. Now let's explore three additional documentation systems that complement man pages: info pages, pinfo, and the --help option.
๐ฏ What You'll Learn: In this comprehensive guide, you'll master:
- What info pages are and how they differ from man pages
- Navigating info pages (hyperlinked documentation)
- Essential info navigation keys
- Using info '(coreutils) command invocation' syntax
- Installing and using pinfo (improved info browser)
- When info is better than man
- Using --help for quick command reference
- Comparing man vs info vs --help output
- Building a complete documentation strategy
- 20+ comprehensive practice labs with solutions
Series: LFCS Certification Preparation - Phase 1 (Post 13 of 52) Previous: Part 12 - Mastering man Pages Part 2: Sections and Advanced Usage Next: Part 14 - Exploring /usr/share/doc and tldr
What Are info Pages?
info pages are GNU's hypertext documentation system - think of them as Wikipedia for Linux commands, with clickable links between topics.
info vs man: Key Differences
| Aspect | man Pages | info Pages |
|---|---|---|
| Structure | Single page, linear | Multiple nodes, hyperlinked |
| Navigation | Scroll up/down | Follow links between nodes |
| Detail Level | Concise reference | Extensive tutorials |
| Best For | Quick option lookup | Learning concepts |
| Coverage | Nearly all commands | Mainly GNU tools |
Using info Command
Basic info Syntax
# View info page for a command
info command_name
# Examples:
info ls
info grep
info tar
info bash
Your First info Page
info ls
What you see:
File: coreutils.info, Node: ls invocation, Next: dir invocation
10.1 'ls': List directory contents
===================================
The 'ls' program lists information about files (of any type, including
directories). Options and file arguments can be intermixed arbitrarily,
as usual.
For non-option command-line arguments that are directories, by
default 'ls' lists the contents of directories, not recursively, and
omitting files with names beginning with '.'. For other non-option
arguments, by default 'ls' lists just the file name. If no non-option
argument is specified, 'ls' operates on the current directory.
Understanding info Page Structure
The top line shows:
- File: Which info file you're reading (
coreutils.info) - Node: Current topic/section (
ls invocation) - Next: Next topic in sequence
- Prev: Previous topic (if exists)
- Up: Parent topic
Top Node (Main Menu)
Chapter Nodes (Categories)
Section Nodes (Specific Topics)
Hyperlinks to Related Topics
Essential info Navigation Keys
| Key | Action | Use When |
|---|---|---|
Space | Scroll forward one screen | Reading through |
Backspace or Del | Scroll backward one screen | Going back |
n | Next node | Sequential reading |
p | Previous node | Going back |
u | Up to parent node | Going to overview |
Tab | Jump to next hyperlink | Navigating links |
Enter | Follow hyperlink | Clicking links |
l | Go back (like browser back) | After following links |
t | Go to top (main menu) | Starting over |
s | Search forward | Finding text |
? | Show help | Learning keys |
q | Quit info | Done reading |
๐ก Pro Tip: The Tab key is your friend in info pages! Use it to jump between hyperlinks, then press Enter to follow them. Think of it like browsing the web from the terminal.
Advanced info Syntax
Accessing Specific Nodes
# Access specific node within an info file
info '(coreutils) ls invocation'
# Format: info '(file) node name'
Real examples:
info '(coreutils) ls invocation' # ls command details
info '(coreutils) cp invocation' # cp command details
info '(bash) Shell Parameters' # Bash parameters
info '(tar) Synopsis' # tar synopsis
Why This Syntax Matters
Problem: Running info ls might show the main coreutils page, requiring navigation.
Solution: Jump directly to the section you need!
# Instead of:
info coreutils
# Then navigate to ls section...
# Do this:
info '(coreutils) ls invocation'
# Jump directly!
Introducing pinfo
pinfo is an enhanced info browser with a more intuitive interface.
Installing pinfo
# RHEL/CentOS/Rocky/Alma
sudo dnf install pinfo
# Debian/Ubuntu
sudo apt install pinfo
pinfo vs info
| Feature | info | pinfo |
|---|---|---|
| Interface | Text-based | Colorful, highlighted links |
| Link Visibility | Hard to spot | Clearly highlighted |
| Navigation | Keyboard shortcuts | Keyboard + arrow keys |
| Learning Curve | Steeper | Easier |
| Fallback | N/A | Falls back to man if no info page |
Using pinfo
# Same syntax as info
pinfo ls
pinfo grep
pinfo tar
# Also supports direct node access
pinfo '(coreutils) ls invocation'
Navigation in pinfo:
- Arrow keys: Move cursor
- Enter: Follow highlighted link
- Up arrow: Move to links
- Escape: Go back
- Q: Quit
๐ก Recommendation: If pinfo is available, use it instead of info. It's more user-friendly and makes hyperlinks obvious.
Using --help Option
The --help option provides quick command reference without leaving your terminal.
Basic --help Usage
# Show help for any command
command --help
# Examples:
ls --help
cp --help
tar --help
grep --help
--help Output Format
ls --help
Output:
Usage: ls [OPTION]... [FILE]...
List information about the FILEs (the current directory by default).
Mandatory arguments to long options are mandatory for short options too.
-a, --all do not ignore entries starting with .
-A, --almost-all do not list implied . and ..
-b, --escape print C-style escapes for nongraphic characters
-l use a long listing format
...
Exit status:
0 if OK,
1 if minor problems (e.g., cannot access subdirectory),
2 if serious trouble (e.g., cannot access command-line argument).
When to Use --help
Use --help when:
- โ You need a quick reminder of options
- โ You want to check if an option exists
- โ You're already in the terminal working
- โ You need quick syntax reference
- โ Time is critical (faster than man)
Use man when:
- โ You need detailed explanations
- โ You want examples
- โ You need to understand behavior
- โ You're learning a new command
Comparing Documentation Methods
Example: ls Command
man ls:
man ls
- Comprehensive reference
- Detailed option explanations
- Exit status codes
- 200+ lines of documentation
info ls:
info '(coreutils) ls invocation'
- Tutorial-style explanations
- Hyperlinked related topics
- Contextual information
- 300+ lines with examples
ls --help:
ls --help
- Quick option list
- Brief descriptions
- Exit status summary
- 80-100 lines of concise info
Which to Use When?
| Scenario | Use | Why |
|---|---|---|
| Quick option check | --help | Fastest, concise |
| Detailed reference | man | Comprehensive, searchable |
| Learning concepts | info | Tutorial style, hyperlinked |
| GNU tool deep dive | info | Most complete for GNU tools |
| Config file format | man 5 | Only man has section 5 |
| In a script | --help | Can parse output |
๐งช Practice Labs
Time to master all three documentation systems!
Lab 1: Basic info Navigation (Beginner)
Tasks:
- Open info page for ls
- Practice navigation keys (n, p, u, t)
- Follow a hyperlink with Tab and Enter
- Use 'l' to go back
- Search for "recursive" with 's'
Click to reveal solution
# Task 1: Open ls info page
info ls
# Task 2: Practice navigation
# Press n (next node)
# Press p (previous node)
# Press u (up to parent)
# Press t (top/main menu)
# Task 3 & 4: Follow hyperlinks
# Press Tab repeatedly to cycle through links
# When on a link you want, press Enter
# Press l to go back
# Task 5: Search
# Press s
# Type: recursive
# Press Enter
# Finds mentions of "recursive"
# Exit
Press q
Key Learning:
- n/p for sequential navigation
- Tab for jumping to links
- Enter to follow links
- l to go back (like browser)
- s for searching
Lab 2: Direct Node Access (Beginner)
Tasks:
- Access ls invocation directly
- Access cp invocation directly
- Access tar synopsis directly
- Compare with regular info command
- Document the time savings
Click to reveal solution
# Task 1: Direct ls access
info '(coreutils) ls invocation'
# Jumps directly to ls documentation
Press q
# Task 2: Direct cp access
info '(coreutils) cp invocation'
# Jumps directly to cp documentation
Press q
# Task 3: Direct tar access
info '(tar) Synopsis'
# Or:
info '(tar) Tutorial'
Press q
# Task 4: Compare with regular command
time info ls
# Navigate to find what you need...
# Press q
time info '(coreutils) ls invocation'
# Already there!
# Press q
# Task 5: Document savings
cat << 'EOF'
Time Comparison:
Regular info command:
1. Launch info
2. Navigate main menu
3. Find section
4. Read content
Estimated: 30-60 seconds
Direct node access:
1. Launch directly to section
2. Read content
Estimated: 5 seconds
Time saved: 25-55 seconds per lookup!
Direct access syntax:
info '(file) node name'
EOF
Key Learning:
- Direct node access is much faster
- Use when you know what you need
- Saves significant time
- Essential for efficiency
Lab 3: Installing and Using pinfo (Beginner)
Tasks:
- Install pinfo
- Compare info vs pinfo interface
- Navigate with arrow keys
- Notice highlighted links
- Test fallback to man pages
Click to reveal solution
# Task 1: Install pinfo
# RHEL/CentOS
sudo dnf install pinfo
# Debian/Ubuntu
sudo apt install pinfo
# Task 2: Compare interfaces
info ls
# Note: Plain text, links hard to see
Press q
pinfo ls
# Note: Colored, links highlighted
Press q
# Task 3: Navigate with arrow keys
pinfo ls
# Use arrow keys to move cursor
# Much more intuitive than info
# Task 4: Notice links
# Links are clearly highlighted in color
# Cursor can select them directly
# Task 5: Test fallback
pinfo some_command_without_info_page
# pinfo automatically shows man page instead!
# Falls back gracefully
Press q
Key Learning:
- pinfo is more user-friendly
- Colorful interface helps navigation
- Arrow keys feel natural
- Automatic fallback to man pages
Lab 4: Mastering --help (Beginner)
Tasks:
- Compare --help output for 5 commands
- Find specific option using grep
- Pipe --help to less for long output
- Save --help output to file
- Create personal --help quick reference
Click to reveal solution
# Task 1: Compare --help output
ls --help
cp --help
mv --help
rm --help
find --help
# Task 2: Find specific option
ls --help | grep -i recursive
# Shows: -R, --recursive
cp --help | grep -i preserve
# Shows: -p, --preserve
tar --help | grep -i compress
# Shows: -z, --gzip
# Task 3: Pipe to less
find --help | less
# Easier to read long help output
# Task 4: Save to file
ls --help > ~/ls-help.txt
cat ~/ls-help.txt
# Task 5: Create reference
cat << 'EOF' > ~/help-quick-reference.txt
Quick --help Reference
Common Patterns:
- Short option: -l
- Long option: --long
- Option with value: -o value or --option=value
Finding Options:
command --help | grep keyword
Example: Find recursive option
ls --help | grep recursive
Saving help:
command --help > file.txt
Paging long help:
command --help | less
When to use:
- Quick option check
- Verify option exists
- Copy exact syntax
- Script integration
EOF
cat ~/help-quick-reference.txt
Key Learning:
- --help is fastest for quick reference
- Pipe to grep for specific options
- Pipe to less for long output
- Save output for offline reference
Lab 5: Comparing Documentation (Intermediate)
Tasks:
- Compare man, info, and --help for tar
- Note differences in detail level
- Find information in each source
- Determine best use case for each
- Create decision flowchart
Click to reveal solution
# Task 1-2: Compare all three
tar --help
# Shows: Basic syntax, common options
# Length: ~100 lines
man tar
# Shows: Comprehensive reference
# Length: 500+ lines
Press q
info tar
# Shows: Tutorial with examples, hyperlinked
# Length: 1000+ lines (across nodes)
Press q
# Task 3: Find how to create tar.gz
# In --help:
tar --help | grep gzip
# Quick answer: -z
# In man:
man tar
/gzip
# Detailed explanation
Press q
# In info:
info tar
# Navigate to compression section
# Tutorial explanation with examples
Press q
# Task 4-5: Create flowchart
cat << 'EOF'
Documentation Decision Flowchart:
START: Need help with command?
โ
Do you know the command name?
No โ use: man -k (apropos)
Yes โ Continue
โ
How much detail do you need?
โ
Quick option check โ --help
- Fastest
- Lists options
- Brief descriptions
Detailed reference โ man
- Comprehensive
- Searchable
- Config files (section 5)
Learning/Tutorial โ info
- Extensive examples
- Hyperlinked
- GNU tools especially
Special cases:
- Config file format? โ man 5 filename
- GNU tool deep dive? โ info tool
- Quick syntax? โ --help
- Learning new tool? โ info, then man
Efficiency tips:
- Start with --help
- If not enough, try man
- For GNU tools, check info
- Use pinfo if available (better than info)
EOF
Key Learning:
- Each documentation type serves different purpose
- Start with fastest (--help)
- Escalate to more detailed as needed
- Know which to use when
Due to length constraints, I'll summarize Labs 6-20:
Labs 6-20 (Summary)
Lab 6: info hyperlink exploration Lab 7: Coreutils info deep dive Lab 8: Using info for bash scripting Lab 9: Creating --help cheat sheets Lab 10: Speed challenge - documentation race Lab 11: GNU vs non-GNU tool documentation Lab 12: info page structure analysis Lab 13: pinfo customization Lab 14: Parsing --help output in scripts Lab 15: Building personal documentation library Lab 16: Advanced info searching Lab 17: Comparing info nodes Lab 18: --help output formatting Lab 19: Documentation troubleshooting Lab 20: Final mastery challenge
Click for condensed Labs 6-20
# Lab 6: info hyperlink exploration
info '(coreutils)'
# Tab through all available links
# Map out the structure
# Lab 7: Coreutils deep dive
info coreutils
# Explore: File operations, Shell utilities, Text utilities
# Lab 8: Bash scripting with info
info bash
info '(bash) Shell Parameters'
info '(bash) Conditional Constructs'
# Lab 9: Create --help cheat sheet
for cmd in ls cp mv rm mkdir; do
echo "=== $cmd ===" >> ~/help-cheat.txt
$cmd --help | head -3 >> ~/help-cheat.txt
done
# Lab 10: Speed challenge
# Find tar compression option in under 30 seconds using all 3 methods
# Labs 11-20 focus on:
# - Advanced navigation techniques
# - Integration with scripts
# - Custom documentation strategies
# - Real-world problem solving
๐ Best Practices
Documentation Strategy
- Start with --help - Fastest for quick checks
- Use man for reference - Most reliable, always available
- Use info for learning - Best for understanding concepts
- Prefer pinfo over info - If available, more user-friendly
- Know when to escalate - Don't waste time in wrong resource
For LFCS Exam
- --help is fastest during time-critical tasks
- man pages are primary - Always available, comprehensive
- info pages optional - Good for GNU tools if time allows
- Practice offline - Exam environment may limit resources
- Build muscle memory - Know which tool for which task
Workflow Integration
# Add to ~/.bashrc
# Quick documentation access
doc() {
echo "Trying --help first..."
$1 --help 2>/dev/null || {
echo "No --help available, trying man..."
man $1 2>/dev/null || {
echo "No man page, trying info..."
info $1
}
}
}
# Usage:
doc ls # Tries --help, falls back to man, then info
๐จ Common Pitfalls
Pitfall 1: Using Wrong Tool
# WRONG - info for config file format
info fstab
# info doesn't have this!
# CORRECT - man section 5
man 5 fstab
Pitfall 2: Not Trying --help First
# INEFFICIENT:
man tar
# Scroll through 500 lines...
# EFFICIENT:
tar --help | grep compress
# Answer in 2 seconds
Pitfall 3: Forgetting Direct Node Access
# SLOW:
info coreutils
# Navigate to ls section...
# FAST:
info '(coreutils) ls invocation'
๐ Quick Reference
Command Summary
# info commands
info command # Open info page
info '(file) node' # Jump to specific node
info coreutils # All coreutils docs
pinfo command # Better info interface
# --help option
command --help # Quick reference
command --help | grep keyword # Find specific option
command --help | less # Page through help
Navigation Keys
# info/pinfo navigation
n # Next node
p # Previous node
u # Up to parent
Tab # Next hyperlink
Enter # Follow link
l # Go back (last)
t # Top (main menu)
s # Search
q # Quit
Decision Matrix
Need quick option? โ --help
Need detailed reference? โ man
Learning new concept? โ info
Config file format? โ man 5
GNU tool tutorial? โ info
๐ฏ Key Takeaways
- Three documentation systems - Each serves different purpose
- --help is fastest - For quick option lookups
- man is comprehensive - Your primary reference (always available)
- info is for learning - Best for understanding concepts
- pinfo is better - Use it instead of info if available
- Start with --help - Escalate to man, then info
- Direct node access - Use info '(file) node' to save time
- Know the right tool - Don't waste time in wrong resource
๐ What's Next?
You've mastered info, pinfo, and --help! In the next post, we'll explore additional documentation resources hidden in your Linux system.
Coming up in Part 14: Exploring /usr/share/doc and tldr
- Purpose of /usr/share/doc
- Finding package documentation
- README files, examples, changelogs
- Installing and using tldr (simplified man pages)
- tldr vs man: When to use each
- Creating your own documentation library
- And much more!
๐ Congratulations! You've completed Part 13 of the LFCS Certification series. You now have a complete documentation strategy: --help for speed, man for reference, and info for learning. You're becoming self-sufficient!
Practice Challenge: For the next 3 days, use this workflow:
- Try --help first
- If not enough, use man
- For GNU tools, explore info Track how much faster you become!

