Linux info Command: Browse GNU Documentation
info is a command to read Info format manuals of GNU programs in the terminal. If man is closer to a reference document that you read page by page, up and down, info divides the document into units called nodes and links them with menus and cross-references, allowing you to navigate it like a book.
For programs with extensive documentation like GNU Coreutils, Info documents often provide more detailed explanations of concepts, interactions of options, and examples. This article explains how to open documents, move between nodes and menus, search the text and index, go directly to a specific location in the document, and what to do if the document is missing.
What is the info command?
info is a text-based document viewer that reads Info files created with the Texinfo documentation system. Typically, Info files are installed in directories like /usr/share/info, and a single manual is divided into multiple nodes forming a hierarchical structure.
Info documents may include menus for moving to subtopics, cross-references pointing to other nodes or manuals, and subject-specific indexes. They are suitable not only for reading the required items in order but also for following related explanations or looking up terms in the index.
Basic syntax and how to start
The basic syntax of GNU Info is as follows. Square brackets indicate optional items, and ellipses mean that multiple items can be specified, so they are not entered in the actual command.
info [options...] [manual] [menu-or-index-item...]
If run without any arguments, the top-level directory menu collecting the Info documents registered in the system will open.
info
The general usage guide for info itself and the detailed manual of the standalone GNU Info can be opened as follows.
info info info info-stnd
If a specific program name is specified, it searches for the related entry in the top-level directory and navigates to that manual or node.
info ls info coreutils
info ls can link to the ls-related node inside the GNU Coreutils manual, rather than a separate ls.info file. This is because top-level directory entries can directly point to specific nodes within a manual.
Understanding the structure of Info documents
When first run, it may feel complicated due to terms that differ from regular web pages or man. Understanding the following four concepts makes it easier to grasp the document structure.
| Terminology | Meaning |
|---|---|
| Node | Info documents are composed of pages. Often, one page corresponds to a chapter or section. |
| Menu | A list that allows you to move to subtopics or related items of the current node. |
| Cross-reference (Xref) | A link to another node or another Info manual related to the current description. |
| Directory Node | The top-level menu that classifies and displays multiple Info manuals registered in the system. |
At the top of the screen, the current file and node names, as well as navigation targets such as Next, Prev, and Up may be displayed. In the lower mode line, the status such as the current manual, node, and position within the document is shown.
Keys used for moving the screen and navigating documents
The table below is based on the default keys of the standalone GNU Info. Some keys may differ depending on user settings or the --vi-keys option.
| Key | Action |
|---|---|
Space |
Move to the next screen, and at the end of a node, continue to the next node. |
Backspace, Delete |
Move to the previous screen. Keys may vary depending on the terminal. |
n |
Move to the Next node of the current node. |
p |
Move to the Prev node of the current node. |
u |
Move to the Up node one level above. |
t |
Move to the Top node of the current Info file. |
d |
Move to the directory node that collects the installed manuals. |
l |
Return to the node previously viewed from the visit history. |
m |
Enter a name to select a menu item in the current node. |
Tab, Shift+Tab |
Move the cursor to the next or previous menu/cross-reference item on the screen. |
Enter |
Open the menu item or cross-reference where the cursor is placed. |
H |
Open a help window summarizing the basic keys. |
h |
Move to a help node explaining how to use Info. |
q |
Exit Info. |
When using it for the first time, it is recommended to open info info-stnd, press H to check the basic keys, and read the document using Space and Backspace.
How to follow menus and cross-references
Selecting items on the screen with Tab and Enter
If a menu or cross-reference is visible on the screen, you can move between items with Tab and select with Enter. Shift+Tab returns to the previous item. This is the most intuitive navigation method when you do not yet know the document structure.
Entering menu names with m
Press m to enter the menu item name in the input area at the bottom of the screen. You can then type part of the name and use Tab to check the items that can be completed, making it easy to move quickly in a long menu.
After reading another document by following the menu, use l to return to the original position. If you want to move to a higher node in the structure, you should use u instead of the visit history.
How to search for the desired content within the document
Searching text in the main body
Press s or / and then enter the search term to find the string in the current Info file. A search term without uppercase letters is case-insensitive by default, and a search term with uppercase letters is case-sensitive.
? searches in the opposite direction (backwards). Incremental search, where results are shown as you type, uses Ctrl+s, and reverse incremental search uses Ctrl+r.
Finding topics in the index
i searches for the entered term in the index of the current manual and moves to the node pointed to by the first matching entry. This can be faster and more accurate than searching the entire text when looking for option names or concepts in long manuals.
I collects matching index entries into a virtual node for display. After an i search, pressing the comma key (,) moves to the next matching index entry.
Searching all installed Info indexes
If you do not know which manual contains the explanation, use the -k or --apropos option in the shell. This searches the indexes of all installed Info files, so it may take time if there are many documents.
info -k permissions info --apropos='regular expression'
Jumping Directly to a Specific Manual and Node
Open by Manual or Program Name
If you know the manual name, you can specify it directly. The entire GNU Coreutils documentation can be opened as follows.
info coreutils
If program-specific entries are registered in the top-level directory, you can go directly to the relevant node within the manual using just the program name.
info ls info cp info date
These commands assume that GNU Coreutils is installed and that the Info directory entries are properly registered.
Specifying a Node Name
You can specify the initial node to open with -n or --node. Node names with spaces should be enclosed in quotes so they are passed as a single argument to the shell.
info coreutils -n 'ls invocation'
You can also specify the Info cross-reference format (manual)node as a single argument. Enclose the entire string in quotes so that parentheses and spaces are not interpreted by the shell.
info '(coreutils)ls invocation'
The node name may vary depending on the installed document version. If you are unsure of the exact name, it is safer to first navigate using info ls or an index search.
Finding nodes that explain how to execute commands
-O, --show-options, or --usage find Invocation nodes that explain how to run the specified program from the command line.
info ls -O info --show-options coreutils
Depending on the documentation structure, you may not find a suitable Invocation node. In that case, open it with info program and use i index search.
Frequently used info options
The options below are based on standalone GNU Info. For the full options of the installed version, check info --help or info info-std.
| Option | Description |
|---|---|
-k string, --apropos=string |
Search for the string in the index of all installed Info files. |
-n node, --node=node |
Specifies the node to visit first. |
-f manual, --file=manual |
Opens a specific Info file or manual without listing directory entries. |
-w, --where |
Prints the path of the Info file that would be selected without opening the document. |
-d path, --directory=path |
Adds a search path for Info files. Can be specified multiple times. |
-o file, --output=file |
Instead of an interactive screen, outputs the content of the node to visit as a file. |
--subnodes |
Used with --output to recursively output the sub-nodes of the menu. |
-O, --show-options |
Finds the node that covers the program's command-line usage. |
--vi-keys |
Rebinds some keys in a way closer to vi and Less. |
--version |
Outputs the version of the installed Info. |
Check the location of the Info file and output text.
Verify the actual document file being selected.
-w outputs the location of the file Info selects without opening the document. This allows you to check which document is read when multiple files with the same name exist in the search path.
info -w coreutils
In environments that support all matching file paths, it can be used with --all.
info --all --where coreutils
Exporting documents to a text file
With -o, you can record the content to a file instead of the interactive screen. Using --subnodes together will recursively output the subnodes linked by the menu.
info --subnodes -o coreutils.txt coreutils
If you specify - as the output file, you can send it to standard output, making it easy to connect with other commands.
info -o - coreutils | less
Since the entire manual can be very large, first consider the file size and the scope you need. If only specific nodes are needed, it is efficient to use -n together.
Specifying user documents and search paths
Directly opening local Info files
Info files in the current directory can be opened by specifying a relative path. If a slash is included in the path, it targets the file in that location rather than the general search path.
info ./project.info info -f ./project.info
Compressed Info files can also be read directly if the format is supported by the implementation.
Specifying Additional Search Directories
You can add directories to search for documents using -d. This is useful for temporarily opening the documentation of tools installed outside the system path.
info -d /opt/example/share/info example
Persistent search paths can be influenced by the INFOPATH environment variable. If you set the value directly, the inclusion of default paths may change, so first check the current state and the result of info -w manual.
printf '%s\n' "$INFOPATH" info -w info-stnd
Differences between info and man
| Category | info |
man |
|---|---|---|
| Document Structure | Hierarchical documents connected by nodes, menus, cross-references, and indexes | Typically linear documents read from top to bottom on a single page |
| Suitable uses | When reading concepts, chapter explanations, long examples, and related topics in depth | When quickly checking grammar, options, files, and exit statuses |
| Main targets | Software that provides GNU programs and Texinfo documents | Commands, configuration files, system calls, library functions, etc. |
| Navigation methods | Menu/node navigation and main text/index searches | Screen navigation and string search in pager |
| Installation status | Some programs may not have Info documents | Some packages may not have man pages |
You do not have to use only one of them. When you want to quickly check the meaning of an option, man or --help is convenient, and when you want to see the overall concept of GNU programs and relationships between options in depth, info is useful. Choose the appropriate tool depending on the document format provided by the program and the installation status.
When info is missing or the document cannot be found
Installing the info program
In minimal installation environments, info may be missing. In Debian/Ubuntu and Fedora/Rocky Linux families, the package name is generally info.
sudo apt update sudo apt install info
sudo dnf install info
Since package names may vary depending on the distribution version and repository configuration, if it is not installed, check the package search results for that distribution.
Check whether the Info documentation of a specific program is installed
Even if the info executable exists, the desired manual may not be installed. First, check the top-level list and search results.
info info -k 'program or topic' info -w manual
If the program and documentation are provided in separate packages, find the documentation package for that program in the distribution's package manager.
When the document does not appear in the directory menu
If the file exists but is not registered in the top-level directory, you can open it by specifying the path or file directly.
info -d /additional/document/path manual info -f /full/path/manual.info
If the software was installed directly from the source, also check whether the installation process updated the Info directory files. Before manually modifying the system documentation registration, first check the package installation records and the program's installation instructions.
Practical usage order
- Check whether the relevant document opens with the
infoprogram. - Check the current key help with
H, and navigate the structure withSpace,n,p,u. - Select the menus shown on the screen using
TabandEnterorm. - If you know the exact term, search the index with
i, and for general phrases, search the text withsor/. - If you don't know which manual to use, search the entire installed index from the shell with
info -k keyword. - If you want to repeatedly view a location, specify the node directly with
-nor output the required content with-o.
Frequently Asked Questions
How do you exit info?
Press q to exit. If you don't know the current key settings, press uppercase H to check the quick help.
When pressing n, it moves to another document instead of search results
In the default key settings, n moves to the Next node of the current node, not the search results. Use s or / for text search, and i for index search. The key bindings may change if you use --vi-keys.
What is the difference between info ls and info coreutils?
info ls finds the ls entry in the top-level directory and goes directly to the related node, while info coreutils opens the starting location of the Coreutils manual. Depending on the installed directory entries and document version, the actual starting node may differ.
Do all commands have Info documents?
No. Info is widely used in the GNU project, but not all Linux programs provide Info documents. If there is no Info document, check man command, command --help, or the official documentation of the program.
Are Info documents always more accurate than man manuals?
It is not always the case. Each project has different reference documents and update methods. Some projects, like GNU Coreutils, provide the Info manual as a detailed reference document, while other programs may prioritize man pages or web documents. It is recommended to check both the currently installed program version and the project's official documentation.
Summary
info allows you to navigate the long manuals of GNU programs through nodes, menus, cross-references, and indexes. At first, you can read most of the documentation by just learning info program, H, Space, n, p, u, i, and q.
It is efficient to quickly check simple syntax and options with --help or man, and use info for background concepts and examples when needed. If you want to look at other basic commands, you can refer to List and Overview of Linux Commands.









