]>
Commit | Line | Data |
---|---|---|
fea681da MK |
1 | .\" Copyright (c) 2002 Andries Brouwer <aeb@cwi.nl> |
2 | .\" | |
93015253 | 3 | .\" %%%LICENSE_START(VERBATIM) |
fea681da MK |
4 | .\" Permission is granted to make and distribute verbatim copies of this |
5 | .\" manual provided the copyright notice and this permission notice are | |
6 | .\" preserved on all copies. | |
7 | .\" | |
8 | .\" Permission is granted to copy and distribute modified versions of this | |
9 | .\" manual under the conditions for verbatim copying, provided that the | |
10 | .\" entire resulting derived work is distributed under the terms of a | |
11 | .\" permission notice identical to this one. | |
988db661 | 12 | .\" |
fea681da MK |
13 | .\" Since the Linux kernel and libraries are constantly changing, this |
14 | .\" manual page may be incorrect or out-of-date. The author(s) assume no | |
15 | .\" responsibility for errors or omissions, or for damages resulting from | |
16 | .\" the use of the information contained herein. The author(s) may not | |
17 | .\" have taken the same level of care in the production of this manual, | |
18 | .\" which is licensed free of charge, as they might when working | |
19 | .\" professionally. | |
988db661 | 20 | .\" |
fea681da MK |
21 | .\" Formatted or processed versions of this manual, if unaccompanied by |
22 | .\" the source, must acknowledge the copyright and authors of this work. | |
4b72fb64 | 23 | .\" %%%LICENSE_END |
fea681da | 24 | .\" |
f45a07b6 MK |
25 | .\" 2007-10-23 mtk Added intro paragraph about section, plus a paragraph |
26 | .\" about exit status values. | |
27 | .\" | |
a5b9e015 | 28 | .TH INTRO 1 2007-11-15 "Linux" "Linux User's Manual" |
fea681da | 29 | .SH NAME |
f68512e9 | 30 | intro \- introduction to user commands |
fea681da | 31 | .SH DESCRIPTION |
f45a07b6 MK |
32 | Section 1 of the manual describes user commands and tools, |
33 | for example, file manipulation tools, shells, compilers, | |
34 | web browsers, file and image viewers and editors, and so on. | |
35 | ||
36 | All commands yield a status value on termination. | |
37 | This value can be tested (e.g., in most shells the variable | |
38 | .I $? | |
39 | contains the status of the last executed command) | |
40 | to see whether the command completed successfully. | |
41 | A zero exit status is conventionally used to indicate success, | |
c7094399 | 42 | and a nonzero status means that the command was unsuccessful. |
f45a07b6 MK |
43 | (Details of the exit status can be found in |
44 | .BR wait (2).) | |
c7094399 MK |
45 | A nonzero exit status can be in the range 1 to 255, and some commands |
46 | use different nonzero status values to indicate the reason why the | |
f45a07b6 MK |
47 | command failed. |
48 | .SH NOTES | |
008f1ecc MK |
49 | Linux is a flavor of UNIX, and as a first approximation |
50 | all user commands under UNIX work precisely the same under | |
51 | Linux (and FreeBSD and lots of other UNIX-like systems). | |
fea681da | 52 | .LP |
eb9a0b2f | 53 | Under Linux, there are GUIs (graphical user interfaces), where you |
fea681da | 54 | can point and click and drag, and hopefully get work done without |
ca7b3c18 | 55 | first reading lots of documentation. |
008f1ecc | 56 | The traditional UNIX environment |
fea681da | 57 | is a CLI (command line interface), where you type commands to |
ca7b3c18 MK |
58 | tell the computer what to do. |
59 | That is faster and more powerful, | |
fea681da MK |
60 | but requires finding out what the commands are. |
61 | Below a bare minimum, to get started. | |
73d8cece | 62 | .SS Login |
6732bb8b SA |
63 | In order to start working, you probably first have to open a session by |
64 | giving, your username and password. | |
fea681da | 65 | The program |
6732bb8b | 66 | .BR login (1) |
fea681da MK |
67 | now starts a |
68 | .I shell | |
69 | (command interpreter) for you. | |
70 | In case of a graphical login, you get a screen with menus or icons | |
ca7b3c18 MK |
71 | and a mouse click will start a shell in a window. |
72 | See also | |
fea681da | 73 | .BR xterm (1). |
73d8cece | 74 | .SS The shell |
fea681da MK |
75 | One types commands to the |
76 | .IR shell , | |
ca7b3c18 MK |
77 | the command interpreter. |
78 | It is not built-in, but is just a program | |
79 | and you can change your shell. | |
80 | Everybody has her own favorite one. | |
fea681da MK |
81 | The standard one is called |
82 | .IR sh . | |
83 | See also | |
84 | .BR ash (1), | |
85 | .BR bash (1), | |
6732bb8b | 86 | .BR chsh (1), |
fea681da | 87 | .BR csh (1), |
6732bb8b SA |
88 | .BR dash (1), |
89 | .BR ksh (1), | |
90 | .BR zsh (1). | |
91 | .LP | |
92 | A session might go like: | |
fea681da | 93 | .LP |
fea681da MK |
94 | .RS |
95 | .nf | |
d1f129d4 SA |
96 | .RB "knuth login: " aeb |
97 | .RB "Password: " ******** | |
144685a7 | 98 | .RB "$ " date |
fea681da | 99 | Tue Aug 6 23:50:44 CEST 2002 |
144685a7 | 100 | .RB "$ " cal |
fea681da | 101 | August 2002 |
988db661 | 102 | Su Mo Tu We Th Fr Sa |
fea681da MK |
103 | 1 2 3 |
104 | 4 5 6 7 8 9 10 | |
105 | 11 12 13 14 15 16 17 | |
106 | 18 19 20 21 22 23 24 | |
107 | 25 26 27 28 29 30 31 | |
108 | ||
144685a7 | 109 | .RB "$ " ls |
fea681da | 110 | bin tel |
144685a7 | 111 | .RB "$ " "ls \-l" |
fea681da | 112 | total 2 |
94e9d9fe MK |
113 | drwxrwxr\-x 2 aeb 1024 Aug 6 23:51 bin |
114 | \-rw\-rw\-r\-\- 1 aeb 37 Aug 6 23:52 tel | |
144685a7 | 115 | .RB "$ " "cat tel" |
94e9d9fe MK |
116 | maja 0501\-1136285 |
117 | peter 0136\-7399214 | |
144685a7 SA |
118 | .RB "$ " "cp tel tel2" |
119 | .RB "$ " "ls \-l" | |
fea681da | 120 | total 3 |
94e9d9fe MK |
121 | drwxr\-xr\-x 2 aeb 1024 Aug 6 23:51 bin |
122 | \-rw\-r\-\-r\-\- 1 aeb 37 Aug 6 23:52 tel | |
123 | \-rw\-r\-\-r\-\- 1 aeb 37 Aug 6 23:53 tel2 | |
144685a7 SA |
124 | .RB "$ " "mv tel tel1" |
125 | .RB "$ " "ls \-l" | |
fea681da | 126 | total 3 |
94e9d9fe MK |
127 | drwxr\-xr\-x 2 aeb 1024 Aug 6 23:51 bin |
128 | \-rw\-r\-\-r\-\- 1 aeb 37 Aug 6 23:52 tel1 | |
129 | \-rw\-r\-\-r\-\- 1 aeb 37 Aug 6 23:53 tel2 | |
144685a7 SA |
130 | .RB "$ " "diff tel1 tel2" |
131 | .RB "$ " "rm tel1" | |
132 | .RB "$ " "grep maja tel2" | |
94e9d9fe | 133 | maja 0501\-1136285 |
144685a7 | 134 | $ |
fea681da MK |
135 | .fi |
136 | .RE | |
6732bb8b | 137 | .LP |
fea681da | 138 | The |
144685a7 | 139 | .B $ |
5503c85e | 140 | here was the command prompt\(emit is the shell's way of indicating |
ca7b3c18 MK |
141 | that it is ready for the next command. |
142 | The prompt can be customized | |
18701562 | 143 | in lots of ways, and one might include stuff like username, |
410f3d22 | 144 | machine name, current directory, time, and so on. |
fea681da MK |
145 | An assignment PS1="What next, master? " |
146 | would change the prompt as indicated. | |
147 | .LP | |
148 | We see that there are commands | |
149 | .I date | |
150 | (that gives date and time), and | |
151 | .I cal | |
152 | (that gives a calendar). | |
153 | .LP | |
154 | The command | |
155 | .I ls | |
5503c85e | 156 | lists the contents of the current directory\(emit tells you what |
ca7b3c18 | 157 | files you have. |
80d26cef MK |
158 | With a |
159 | .I \-l | |
160 | option it gives a long listing, | |
fea681da MK |
161 | that includes the owner and size and date of the file, and the |
162 | permissions people have for reading and/or changing the file. | |
163 | For example, the file "tel" here is 37 bytes long, owned by aeb | |
164 | and the owner can read and write it, others can only read it. | |
165 | Owner and permissions can be changed by the commands | |
166 | .I chown | |
167 | and | |
168 | .IR chmod . | |
169 | .LP | |
170 | The command | |
171 | .I cat | |
172 | will show the contents of a file. | |
173 | (The name is from "concatenate and print": all files given as | |
6732bb8b SA |
174 | parameters are concatenated and sent to "standard output" |
175 | (see | |
176 | .BR stdout (3)), | |
177 | here | |
fea681da MK |
178 | the terminal screen.) |
179 | .LP | |
180 | The command | |
181 | .I cp | |
182 | (from "copy") will copy a file. | |
6732bb8b SA |
183 | .LP |
184 | The command | |
fea681da | 185 | .I mv |
6732bb8b | 186 | (from "move"), on the other hand, only renames it. |
fea681da MK |
187 | .LP |
188 | The command | |
189 | .I diff | |
190 | lists the differences between two files. | |
191 | Here there was no output because there were no differences. | |
192 | .LP | |
193 | The command | |
194 | .I rm | |
195 | (from "remove") deletes the file, and be careful! it is gone. | |
ca7b3c18 MK |
196 | No wastepaper basket or anything. |
197 | Deleted means lost. | |
fea681da MK |
198 | .LP |
199 | The command | |
200 | .I grep | |
201 | (from "g/re/p") finds occurrences of a string in one or more files. | |
202 | Here it finds Maja's telephone number. | |
73d8cece | 203 | .SS Pathnames and the current directory |
fea681da MK |
204 | Files live in a large tree, the file hierarchy. |
205 | Each has a | |
2d7195b8 | 206 | .I "pathname" |
af2908c3 SA |
207 | describing the path from the root of the tree (which is called |
208 | .IR / ) | |
ca7b3c18 | 209 | to the file. |
af2908c3 SA |
210 | For example, such a full pathname might be |
211 | .IR /home/aeb/tel . | |
2d7195b8 | 212 | Always using full pathnames would be inconvenient, and the name |
33a0ccb2 MK |
213 | of a file in the current directory may be abbreviated by giving |
214 | only the last component. | |
af2908c3 SA |
215 | That is why |
216 | .I /home/aeb/tel | |
217 | can be abbreviated | |
218 | to | |
219 | .I tel | |
220 | when the current directory is | |
221 | .IR /home/aeb . | |
fea681da MK |
222 | .LP |
223 | The command | |
224 | .I pwd | |
225 | prints the current directory. | |
226 | .LP | |
227 | The command | |
228 | .I cd | |
229 | changes the current directory. | |
6732bb8b SA |
230 | .LP |
231 | Try alternatively | |
232 | .I cd | |
233 | and | |
234 | .I pwd | |
235 | commands and explore | |
236 | .I cd | |
237 | usage: "cd", "cd .", "cd ..", "cd /" and "cd ~". | |
73d8cece | 238 | .SS Directories |
fea681da MK |
239 | The command |
240 | .I mkdir | |
241 | makes a new directory. | |
242 | .LP | |
243 | The command | |
244 | .I rmdir | |
245 | removes a directory if it is empty, and complains otherwise. | |
246 | .LP | |
247 | The command | |
248 | .I find | |
249 | (with a rather baroque syntax) will find files with given name | |
20523df7 MK |
250 | or other properties. |
251 | For example, "find . \-name tel" would find | |
af2908c3 SA |
252 | the file |
253 | .I tel | |
254 | starting in the present directory (which is called | |
255 | .IR . ). | |
4d9b6984 | 256 | And "find / \-name tel" would do the same, but starting at the root |
20523df7 MK |
257 | of the tree. |
258 | Large searches on a multi-GB disk will be time-consuming, | |
fea681da MK |
259 | and it may be better to use |
260 | .BR locate (1). | |
73d8cece | 261 | .SS Disks and filesystems |
fea681da MK |
262 | The command |
263 | .I mount | |
9ee4a2b6 MK |
264 | will attach the filesystem found on some disk (or floppy, or CDROM or so) |
265 | to the big filesystem hierarchy. | |
20523df7 | 266 | And |
fea681da MK |
267 | .I umount |
268 | detaches it again. | |
269 | The command | |
270 | .I df | |
271 | will tell you how much of your disk is still free. | |
73d8cece | 272 | .SS Processes |
008f1ecc | 273 | On a UNIX system many user and system processes run simultaneously. |
fea681da MK |
274 | The one you are talking to runs in the |
275 | .IR foreground , | |
276 | the others in the | |
277 | .IR background . | |
278 | The command | |
279 | .I ps | |
280 | will show you which processes are active and what numbers these | |
281 | processes have. | |
282 | The command | |
283 | .I kill | |
20523df7 MK |
284 | allows you to get rid of them. |
285 | Without option this is a friendly | |
286 | request: please go away. | |
287 | And "kill \-9" followed by the number | |
fea681da MK |
288 | of the process is an immediate kill. |
289 | Foreground processes can often be killed by typing Control-C. | |
73d8cece | 290 | .SS Getting information |
fea681da MK |
291 | There are thousands of commands, each with many options. |
292 | Traditionally commands are documented on | |
293 | .IR "man pages" , | |
294 | (like this one), so that the command "man kill" will document | |
295 | the use of the command "kill" (and "man man" document the command "man"). | |
296 | The program | |
297 | .I man | |
298 | sends the text through some | |
299 | .IR pager , | |
300 | usually | |
301 | .IR less . | |
302 | Hit the space bar to get the next page, hit q to quit. | |
303 | .LP | |
9fdfa163 | 304 | In documentation it is customary to refer to man pages |
fea681da MK |
305 | by giving the name and section number, as in |
306 | .BR man (1). | |
307 | Man pages are terse, and allow you to find quickly some forgotten | |
20523df7 MK |
308 | detail. |
309 | For newcomers an introductory text with more examples | |
fea681da MK |
310 | and explanations is useful. |
311 | .LP | |
20523df7 MK |
312 | A lot of GNU/FSF software is provided with info files. |
313 | Type "info info" | |
4ca1679e SA |
314 | for an introduction on the use of the program |
315 | .IR info . | |
fea681da | 316 | .LP |
20523df7 MK |
317 | Special topics are often treated in HOWTOs. |
318 | Look in | |
fea681da MK |
319 | .I /usr/share/doc/howto/en |
320 | and use a browser if you find HTML files there. | |
321 | .\" | |
322 | .\" Actual examples? Separate section for each of cat, cp, ...? | |
323 | .\" gzip, bzip2, tar, rpm | |
47297adb | 324 | .SH SEE ALSO |
ab946020 | 325 | .BR ash (1), |
b35813db SA |
326 | .BR bash (1), |
327 | .BR chsh (1), | |
ab946020 | 328 | .BR csh (1), |
6732bb8b SA |
329 | .BR dash (1), |
330 | .BR ksh (1), | |
ab946020 | 331 | .BR locate (1), |
b35813db SA |
332 | .BR login (1), |
333 | .BR man (1), | |
6732bb8b | 334 | .BR su (1), |
b35813db SA |
335 | .BR xterm (1), |
336 | .BR zsh(1), | |
337 | .BR wait (2), | |
6732bb8b | 338 | .BR stdout (3), |
b35813db | 339 | .BR man-pages (7), |
6732bb8b SA |
340 | .BR standards (7), |
341 | .BR shutdown (8) |