Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

Is there a way to follow the links mentioned in a man page? For example, here's the man page for ps; how do I access the link marked in red?

Screenshot of the ps man page

share|improve this question
    
Also, I see that man is an interface to the on-line reference manuals which (if I am not wrong) means it should be pulling all the info from some webpage on the internet, right? So, anyone has a clue as to what the http:// link is? –  its_me Aug 5 '11 at 20:23
4  
Here “on-line” means “on the computer” (as opposed to “on paper”), not “on the Internet”. –  Gilles Aug 5 '11 at 21:45
    
"On-Line": You might remember those "Adventure" Quest games for PC that were put out by a company (then) named Sierra On-Line. man pages: The best way to browse man pages is to use your editor. That way, navigating, searching (etc.) the text will be so smooth as every shortcut is in your muscle-memory since long. Also, say you work on a programming project - you could copy from man pages into your code. Nothing less than seamless interaction. Check out this and my comment to @Gilles ' answer. –  Emanuel Berg Mar 6 '13 at 22:46

6 Answers 6

up vote 20 down vote accepted

Man pages date back to Unix First Edition. While hypertext had been invented, it was still in infancy; the web was two decades away, and the manual was an actual printed book, often with one command per page if they fit (that's why they were called pages).

The format used for manual pages has evolved somewhat since then, but most pages aren't really designed for hypertext, and the default man program doesn't support it (it's just a plain text viewer, with hacks to support some basic formatting). There are however man page viewing programs that reconstruct some hyperlinks, mainly links to other man pages, which are traditionally written in the form man(1) where man is the name of the man page and 1 is the section number:

You can browse the manual pages of several operating systems, converted to HTML by man2html or similar tools, on a number of sites online, for example:

Some time after man pages had become the established documentation format on unix and some time before the web was invented, the GNU project introduced the info documentation format, more advanced than man while sticking to simple markup designed for text terminals. The major innovation of info compared to man was to have multi-page documentation with hyperlinks to other pages. Info is still the prefered documentation format for GNU projects, though most Info pages are generated from a Texinfo source (or sometimes other formats) that can also generate HTML. When info documentation for a program exists, it's often the main manual, while the man pages only contain basic information about command line arguments.

share|improve this answer
    
Great answer! Also worth mentioning is that there is another mode for man pages in Emacs, the one (at least I) get by just M-x man (and C-h v mode-name is Man): at least in one aspect, it is superior to WoMan because it displays tables (screenshot). Of course, it is hyperlinked as well. –  Emanuel Berg Mar 6 '13 at 22:38

First of all, it's not a link. It's just an underline. Man pages are just text documents with a little bit of simple formatting that a terminal can handle. The underline is just a highlight, there is no "link" involved.

The normal mange page reader is just a text formater. In fact it doesn't even display the text, it just formats it and sends it to another text display program to be shown on the screen (usually less). These programs have no concept of links.

There are some special documentation readers that might be able to look at formatting like that and make an educated guess that such a highlight might indicate that there is a related man page that could be pulled up and create a link, but I don't know which ones do. Perhaps pinfo?

If you want web like formatting with hyperlinks you can find almost any UNIX man page online with links added in. Try typing man [anything] into google and you will almost certainly get one in the first couple hits.

In the case of your example, the visual highlighting is a clue that that is another program name that has it's own man page that you can easily pull up. Try man 1 top. The 1 indicates the section of the man pages to look in. See this question for an explanation of the sections: What do the numbers in a man page mean?

share|improve this answer
    
Any idea why it is man 1 top ?? I mean it should be something like ps 1 top because I found the link on the man page for ps. "man 1 top" doesn't make sense to me. Please clarify. –  its_me Aug 5 '11 at 20:20
    
There are also some resources that make man pages available on the internet, with references replaced by href's, which are clickable. –  gabe. Aug 5 '11 at 20:22
1  
If you want to follow top(1) "link", you need to open top manual page from 1st section. For more information about sections see man(1). ps 1 top does not makes any sense, since you'll just run ps command with some strange to it params. –  rvs Aug 5 '11 at 20:23
1  
@Aahan it's man 1 top because you want to see the manual page for the top command in the 1st section of the online manual pages. The reference top(1) means just that, top in the 1st section of the manual pages. To see that, you type "man 1 top" at the prompt. See "man man" –  gabe. Aug 5 '11 at 20:24
1  
@Aaran: The "sections of the manual cover different topics. Section 1 is user commands (stuff you type at the prompt) section 2 is system calls and so on. Some strings appear n more than one section. On the machine I am on right now readlink appears in section 1 and section 2 and printf in sections 1 and 3. If you just type man command, man trys sections in numeric order and displays the first it finds, or you can be specific with man # command, which you have to do to get the documentation for the readlink system call. –  dmckee Aug 6 '11 at 14:26

This is very late reply but use w3mman. w3mman is the system’s manual pager by w3m.

http://www.linuxcommand.org/man_pages/w3mman1.html

You can try it by installing w3m package. I believe this package is registered in the software repositories of most of major Linux/UNIX distributions and Cygwin.

share|improve this answer
    
A late reply that adds some answer to the question that is not mentioned yet, it never a problem! Welcome at Unix&Linux StackExchange! –  Bernhard Dec 14 '12 at 9:48

Although w3mman is a solution to follow links, does not use all the screen (at least on ubuntu 12.10)

I prefer to use:

$ sudo su -
# apt-get install w3m man2html
# exit
$ alias man=' hman -P w3m'

add the last command to ~/.bash_aliases or similar startup script to get it on every session.

The -P w3m is because first browser to hman is lynx or sensible-browser but I prefer w3m

hman is a tool bundled on html2man. See this

If exit with confirmation is annoying to you, as to me is use this

share|improve this answer
    
My mistake, the package must be html2man –  albfan Mar 7 '13 at 17:32

I was able to use the --html argument to man in order to open it in the browser defined by $BROWSER environment variable, so:

BROWSER=google-chrome man ps --help

I'm using Fedora. Not sure if this works for your distro, please test and report in comments.

share|improve this answer
    
The option seems recognized on Ubuntu 12.04, but it fails. –  Hibou57 Aug 12 at 8:08
    
OK, the package groff needs to be installed. The groff command may be there while the package of the same name is not (the command comes with groff-base, not the full groff package). I do man --html="surf file%c//%s" <command>, and it's fine. There is very‑very limited hypertext though :-/ . –  Hibou57 Aug 12 at 8:45

Specifically for Ubuntu, there is Yelp. It's installed by default and is by default able to display manual pages, although the invocation to do so, is not the same as that of the man command; an alias or a shell function can work around the latter point (depends on your shell).

yelp 'man:exit'

It will default to a section in a way I don't know. Reminder: to get the sections list for a manual topic, use whatis, as in whatis exit.

To request Yelp to display a manual page from a specific section, say 2, do:

yelp 'man:exit(2)'

Issues: yelp has bugs and be prepared to get multiple errors output when invoking it from the command line. There also, an alias or a custom shell function can help redirecting all errors to /dev/null

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.