Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Man page
Man pages (short for manual pages) are the extensive documentation
that comes preinstalled with almost all substantial Unix and Unix-like
operating systems. The Unix command used to display them is man.
Each page is a self-contained document.
Usage
To read a manual page for a Unix command, one can use
The man page on man
man <command_name>
at a shell prompt: for example, "man ftp". In order to simplify navigation through the output, man generally uses
the less terminal pager.
Pages are traditionally referred to using the notation "name(section)": for example, ftp(1) [1]. The same page name
may appear in more than one section of the manual, as when the names of system calls, user commands, or macro
packages coincide. Examples are man(1) [2] and man(7) [3], or exit(2) [4] and exit(3) [5]. The syntax for accessing the
non-default manual section varies between different man implementations. On Linux and *BSD, for example, the
syntax for reading printf(3) [6] is
man 3 printf
History
The UNIX Programmer's Manual was first published on November 3, 1971. The first actual man pages were written
by Dennis Ritchie and Ken Thompson at the insistence of Doug McIlroy in 1971. The troff macros used for man
pages (-mm) were the general-purpose ones written by Ted Dolotta (later to be the first manager of USG and the
principal author of the System III manual), with additions for the manuals. At the time, the availability of online
documentation through the manual page system was regarded as a great advance. To this day, virtually every Unix
command line application comes with its man page, and many Unix users perceive a lack of man pages as a sign of
low quality; indeed, some projects, such as Debian, go out of their way to write man pages for programs lacking one.
Few alternatives to man have enjoyed much popularity, with the possible exception of GNU Project's "info" system,
an early and simple hypertext system.
However, the format of a single page for each application, the lack of classification within the sections and the
relatively unsophisticated formatting facilities have motivated the development of alternative documentation
systems, such as the previously mentioned info system.
Most Unix GUI applications (particularly those built using the GNOME and KDE development environments) now
provide end-user documentation in HTML and include embedded HTML viewers such as yelp for reading the help
within the application.
Usually the man pages are written in English. Translations into other languages can be also available on the system.
The default format of the man pages is troff, with either the macro package man (appearance oriented) or on some
systems mdoc (semantic oriented). This makes it possible to typeset a man page to PostScript, PDF and various other
formats for viewing or printing.
Man page 2
The man package on most modern linux distributions includes the man2html command which can be used to enable
users to browse their man pages using a html browser.
In 2010, OpenBSD deprecated troff for formatting manpages in favour of mandoc, a specialised compiler/formatter
for manpages with native support for output in PostScript, HTML, XHTML, and the terminal.
Manual sections
The manual is generally split into eight numbered sections, organized as follows (on BSD, Unix and Linux):
Section Description
1 General commands
2 System calls
3 C library functions
7 Miscellanea
Section Description
1 General commands
2 System calls
3 C library functions
5 Miscellanea
Section Description
9 Kernel routines
n Tcl/Tk keywords
The sections are further subdivided by means of a suffix letter, such that section 3C is for C library calls, 3M is for
the math library, and so on. A consequence of this is that section 8 (system administration commands) is sometimes
relegated to the 1M subsection of the main commands section. Some subsection suffixes have a general meaning
across sections:
Man page 3
Subsection Description
p POSIX specifications
Some versions of man cache the formatted versions of the last several pages viewed.
To see options you can use with command man, enter the command man man.
Layout
All man pages follow a common layout that is optimized for presentation on a simple ASCII text display, possibly
without any form of highlighting or font control. Sections present may include:
NAME
The name of the command or function, followed by a one-line description of what it does.
SYNOPSIS
In the case of a command, you get a formal description of how to run it and what command line options it
takes. For program functions, a list of the parameters the function takes and which header file contains its
definition. For experienced users, this may be all the documentation they need.
DESCRIPTION
A textual description of the functioning of the command or function.
EXAMPLES
Some examples of common usage.
SEE ALSO
A list of related commands or functions.
Other sections may be present, but these are not well standardized across man pages. Common examples include:
OPTIONS, EXIT STATUS, ENVIRONMENT, KNOWN BUGS, FILES, AUTHOR, REPORTING BUGS,
HISTORY and COPYRIGHT.
The former command exports the manual page to PostScript format, while the latter then converts the resulting
PostScript file to PDF. (The above works for both man- and mdoc-formatted manual pages.) In some cases, the
hardcopy version of the manual page may be more readable if printed using a monospaced font; to do so, add the
Man page 4
See also
• List of Unix utilities
• List of Plan 9 applications
• Info (Unix)
• RTFM
External links
• Unix Programmer's Manual of November 3, 1971 [7] (see also the original scans in PS and PDF format [8]).
• man [9]: One open-source implementation of man; used on Red Hat, Mac OS X and others.
• man-db [10]: Alternative implementation of man; used in Debian/Ubuntu, Suse and others.
• UNIX Manual Pages [11]: Resource for the mdoc UNIX manual page language.
• man(1) [2]: format and display the on-line manual pages – Linux User Commands Manual
References
[1] http:/ / linux. die. net/ man/ 1/ ftp
[2] http:/ / linux. die. net/ man/ 1/ man
[3] http:/ / linux. die. net/ man/ 7/ man
[4] http:/ / linux. die. net/ man/ 2/ exit
[5] http:/ / linux. die. net/ man/ 3/ exit
[6] http:/ / linux. die. net/ man/ 3/ printf
[7] http:/ / man. cat-v. org/ unix-1st/
[8] http:/ / cm. bell-labs. com/ cm/ cs/ who/ dmr/ 1stEdman. html
[9] http:/ / primates. ximian. com/ ~flucifredi/ man/
[10] http:/ / man-db. nongnu. org/
[11] http:/ / manpages. bsd. lv
[12] http:/ / manpages. debian. net/
[13] http:/ / leaf. dragonflybsd. org/ cgi/ web-man
[14] http:/ / www. freebsd. org/ cgi/ man. cgi
[15] http:/ / en. linuxpages. info/ index. php?title=Main_Page
[16] http:/ / man. cat-v. org/ inferno/
[17] http:/ / www. manpages. spotlynx. com/
[18] http:/ / linuxmanpages. com/
[19] http:/ / linux. die. net/ man/
[20] http:/ / manpagehelp. net
[21] http:/ / developer. apple. com/ documentation/ Darwin/ Reference/ ManPages/ index. html
[22] http:/ / man-wiki. net/ index. php/ Main_Page
[23] http:/ / netbsd. gw. com/ cgi-bin/ man-cgi
[24] http:/ / unixhelp. ed. ac. uk/ alphabetical/ index. html
[25] http:/ / www. openbsd. org/ cgi-bin/ man. cgi
[26] http:/ / ss64. com/ osx/
[27] http:/ / man. cat-v. org/ plan_9/
[28] http:/ / vos. symantec. com/ documents/ doc_details/ sfha/ 5. 0%20MP3/ Linux/ ManualPages/
[29] http:/ / www. unix. com/ man-page/ OpenSolaris/ 1/ man/
[30] http:/ / manpages. ubuntu. com/
Article Sources and Contributors 6
License
Creative Commons Attribution-Share Alike 3.0 Unported
http:/ / creativecommons. org/ licenses/ by-sa/ 3. 0/