mirror of https://github.com/mkerrisk/man-pages
315 lines
9.0 KiB
Groff
315 lines
9.0 KiB
Groff
.\" Copyright (c) 2002 Andries Brouwer <aeb@cwi.nl>
|
||
.\"
|
||
.\" %%%LICENSE_START(VERBATIM)
|
||
.\" Permission is granted to make and distribute verbatim copies of this
|
||
.\" manual provided the copyright notice and this permission notice are
|
||
.\" preserved on all copies.
|
||
.\"
|
||
.\" Permission is granted to copy and distribute modified versions of this
|
||
.\" manual under the conditions for verbatim copying, provided that the
|
||
.\" entire resulting derived work is distributed under the terms of a
|
||
.\" permission notice identical to this one.
|
||
.\"
|
||
.\" Since the Linux kernel and libraries are constantly changing, this
|
||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||
.\" responsibility for errors or omissions, or for damages resulting from
|
||
.\" the use of the information contained herein. The author(s) may not
|
||
.\" have taken the same level of care in the production of this manual,
|
||
.\" which is licensed free of charge, as they might when working
|
||
.\" professionally.
|
||
.\"
|
||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||
.\" the source, must acknowledge the copyright and authors of this work.
|
||
.\" %%%LICENSE_END
|
||
.\"
|
||
.\" 2007-10-23 mtk Added intro paragraph about section, plus a paragraph
|
||
.\" about exit status values.
|
||
.\"
|
||
.TH INTRO 1 2007-11-15 "Linux" "Linux User's Manual"
|
||
.SH NAME
|
||
intro \- introduction to user commands
|
||
.SH DESCRIPTION
|
||
Section 1 of the manual describes user commands and tools,
|
||
for example, file manipulation tools, shells, compilers,
|
||
web browsers, file and image viewers and editors, and so on.
|
||
|
||
All commands yield a status value on termination.
|
||
This value can be tested (e.g., in most shells the variable
|
||
.I $?
|
||
contains the status of the last executed command)
|
||
to see whether the command completed successfully.
|
||
A zero exit status is conventionally used to indicate success,
|
||
and a nonzero status means that the command was unsuccessful.
|
||
(Details of the exit status can be found in
|
||
.BR wait (2).)
|
||
A nonzero exit status can be in the range 1 to 255, and some commands
|
||
use different nonzero status values to indicate the reason why the
|
||
command failed.
|
||
.SH NOTES
|
||
Linux is a flavor of UNIX, and as a first approximation
|
||
all user commands under UNIX work precisely the same under
|
||
Linux (and FreeBSD and lots of other UNIX-like systems).
|
||
.LP
|
||
Under Linux, there are GUIs (graphical user interfaces), where you
|
||
can point and click and drag, and hopefully get work done without
|
||
first reading lots of documentation.
|
||
The traditional UNIX environment
|
||
is a CLI (command line interface), where you type commands to
|
||
tell the computer what to do.
|
||
That is faster and more powerful,
|
||
but requires finding out what the commands are.
|
||
Below a bare minimum, to get started.
|
||
.SS Login
|
||
In order to start working, you probably first have to login,
|
||
that is, give your username and password.
|
||
See also
|
||
.BR login (1).
|
||
The program
|
||
.I login
|
||
now starts a
|
||
.I shell
|
||
(command interpreter) for you.
|
||
In case of a graphical login, you get a screen with menus or icons
|
||
and a mouse click will start a shell in a window.
|
||
See also
|
||
.BR xterm (1).
|
||
.SS The shell
|
||
One types commands to the
|
||
.IR shell ,
|
||
the command interpreter.
|
||
It is not built-in, but is just a program
|
||
and you can change your shell.
|
||
Everybody has her own favorite one.
|
||
The standard one is called
|
||
.IR sh .
|
||
See also
|
||
.BR ash (1),
|
||
.BR bash (1),
|
||
.BR csh (1),
|
||
.BR zsh (1),
|
||
.BR chsh (1).
|
||
.LP
|
||
A session might go like
|
||
|
||
.RS
|
||
.nf
|
||
.RB "knuth login: " aeb
|
||
.RB "Password: " ********
|
||
.RB "% " date
|
||
Tue Aug 6 23:50:44 CEST 2002
|
||
.RB "% " cal
|
||
August 2002
|
||
Su Mo Tu We Th Fr Sa
|
||
1 2 3
|
||
4 5 6 7 8 9 10
|
||
11 12 13 14 15 16 17
|
||
18 19 20 21 22 23 24
|
||
25 26 27 28 29 30 31
|
||
|
||
.RB "% " ls
|
||
bin tel
|
||
.RB "% " "ls \-l"
|
||
total 2
|
||
drwxrwxr\-x 2 aeb 1024 Aug 6 23:51 bin
|
||
\-rw\-rw\-r\-\- 1 aeb 37 Aug 6 23:52 tel
|
||
.RB "% " "cat tel"
|
||
maja 0501\-1136285
|
||
peter 0136\-7399214
|
||
.RB "% " "cp tel tel2"
|
||
.RB "% " "ls \-l"
|
||
total 3
|
||
drwxr\-xr\-x 2 aeb 1024 Aug 6 23:51 bin
|
||
\-rw\-r\-\-r\-\- 1 aeb 37 Aug 6 23:52 tel
|
||
\-rw\-r\-\-r\-\- 1 aeb 37 Aug 6 23:53 tel2
|
||
.RB "% " "mv tel tel1"
|
||
.RB "% " "ls \-l"
|
||
total 3
|
||
drwxr\-xr\-x 2 aeb 1024 Aug 6 23:51 bin
|
||
\-rw\-r\-\-r\-\- 1 aeb 37 Aug 6 23:52 tel1
|
||
\-rw\-r\-\-r\-\- 1 aeb 37 Aug 6 23:53 tel2
|
||
.RB "% " "diff tel1 tel2"
|
||
.RB "% " "rm tel1"
|
||
.RB "% " "grep maja tel2"
|
||
maja 0501\-1136285
|
||
%
|
||
.fi
|
||
.RE
|
||
and here typing Control-D ended the session.
|
||
The
|
||
.B "% "
|
||
here was the command prompt\(emit is the shell's way of indicating
|
||
that it is ready for the next command.
|
||
The prompt can be customized
|
||
in lots of ways, and one might include stuff like username,
|
||
machine name, current directory, time, and so on.
|
||
An assignment PS1="What next, master? "
|
||
would change the prompt as indicated.
|
||
.LP
|
||
We see that there are commands
|
||
.I date
|
||
(that gives date and time), and
|
||
.I cal
|
||
(that gives a calendar).
|
||
.LP
|
||
The command
|
||
.I ls
|
||
lists the contents of the current directory\(emit tells you what
|
||
files you have.
|
||
With a
|
||
.I \-l
|
||
option it gives a long listing,
|
||
that includes the owner and size and date of the file, and the
|
||
permissions people have for reading and/or changing the file.
|
||
For example, the file "tel" here is 37 bytes long, owned by aeb
|
||
and the owner can read and write it, others can only read it.
|
||
Owner and permissions can be changed by the commands
|
||
.I chown
|
||
and
|
||
.IR chmod .
|
||
.LP
|
||
The command
|
||
.I cat
|
||
will show the contents of a file.
|
||
(The name is from "concatenate and print": all files given as
|
||
parameters are concatenated and sent to "standard output", here
|
||
the terminal screen.)
|
||
.LP
|
||
The command
|
||
.I cp
|
||
(from "copy") will copy a file.
|
||
On the other hand, the command
|
||
.I mv
|
||
(from "move") only renames it.
|
||
.LP
|
||
The command
|
||
.I diff
|
||
lists the differences between two files.
|
||
Here there was no output because there were no differences.
|
||
.LP
|
||
The command
|
||
.I rm
|
||
(from "remove") deletes the file, and be careful! it is gone.
|
||
No wastepaper basket or anything.
|
||
Deleted means lost.
|
||
.LP
|
||
The command
|
||
.I grep
|
||
(from "g/re/p") finds occurrences of a string in one or more files.
|
||
Here it finds Maja's telephone number.
|
||
.SS Pathnames and the current directory
|
||
Files live in a large tree, the file hierarchy.
|
||
Each has a
|
||
.I "pathname"
|
||
describing the path from the root of the tree (which is called /)
|
||
to the file.
|
||
For example, such a full pathname might be /home/aeb/tel.
|
||
Always using full pathnames would be inconvenient, and the name
|
||
of a file in the current directory may be abbreviated by giving
|
||
only the last component.
|
||
That is why "/home/aeb/tel" can be abbreviated
|
||
to "tel" when the current directory is "/home/aeb".
|
||
.LP
|
||
The command
|
||
.I pwd
|
||
prints the current directory.
|
||
.LP
|
||
The command
|
||
.I cd
|
||
changes the current directory.
|
||
Try "cd /" and "pwd" and "cd" and "pwd".
|
||
.SS Directories
|
||
The command
|
||
.I mkdir
|
||
makes a new directory.
|
||
.LP
|
||
The command
|
||
.I rmdir
|
||
removes a directory if it is empty, and complains otherwise.
|
||
.LP
|
||
The command
|
||
.I find
|
||
(with a rather baroque syntax) will find files with given name
|
||
or other properties.
|
||
For example, "find . \-name tel" would find
|
||
the file "tel" starting in the present directory (which is called ".").
|
||
And "find / \-name tel" would do the same, but starting at the root
|
||
of the tree.
|
||
Large searches on a multi-GB disk will be time-consuming,
|
||
and it may be better to use
|
||
.BR locate (1).
|
||
.SS Disks and filesystems
|
||
The command
|
||
.I mount
|
||
will attach the filesystem found on some disk (or floppy, or CDROM or so)
|
||
to the big filesystem hierarchy.
|
||
And
|
||
.I umount
|
||
detaches it again.
|
||
The command
|
||
.I df
|
||
will tell you how much of your disk is still free.
|
||
.SS Processes
|
||
On a UNIX system many user and system processes run simultaneously.
|
||
The one you are talking to runs in the
|
||
.IR foreground ,
|
||
the others in the
|
||
.IR background .
|
||
The command
|
||
.I ps
|
||
will show you which processes are active and what numbers these
|
||
processes have.
|
||
The command
|
||
.I kill
|
||
allows you to get rid of them.
|
||
Without option this is a friendly
|
||
request: please go away.
|
||
And "kill \-9" followed by the number
|
||
of the process is an immediate kill.
|
||
Foreground processes can often be killed by typing Control-C.
|
||
.SS Getting information
|
||
There are thousands of commands, each with many options.
|
||
Traditionally commands are documented on
|
||
.IR "man pages" ,
|
||
(like this one), so that the command "man kill" will document
|
||
the use of the command "kill" (and "man man" document the command "man").
|
||
The program
|
||
.I man
|
||
sends the text through some
|
||
.IR pager ,
|
||
usually
|
||
.IR less .
|
||
Hit the space bar to get the next page, hit q to quit.
|
||
.LP
|
||
In documentation it is customary to refer to man pages
|
||
by giving the name and section number, as in
|
||
.BR man (1).
|
||
Man pages are terse, and allow you to find quickly some forgotten
|
||
detail.
|
||
For newcomers an introductory text with more examples
|
||
and explanations is useful.
|
||
.LP
|
||
A lot of GNU/FSF software is provided with info files.
|
||
Type "info info"
|
||
for an introduction on the use of the program "info".
|
||
.LP
|
||
Special topics are often treated in HOWTOs.
|
||
Look in
|
||
.I /usr/share/doc/howto/en
|
||
and use a browser if you find HTML files there.
|
||
.\"
|
||
.\" Actual examples? Separate section for each of cat, cp, ...?
|
||
.\" gzip, bzip2, tar, rpm
|
||
.SH SEE ALSO
|
||
.BR ash (1),
|
||
.BR bash (1),
|
||
.BR chsh (1),
|
||
.BR csh (1),
|
||
.BR locate (1),
|
||
.BR login (1),
|
||
.BR man (1),
|
||
.BR xterm (1),
|
||
.BR zsh(1),
|
||
.BR wait (2),
|
||
.BR man-pages (7),
|
||
.BR standards (7)
|