第1章 第1课时:什么是Unix 1
1.1本课目标 1
1.2什么是Unix 1
1.3 Unix的简单历史 2
1.3.1 C编程语言 3
1.3.2 Unix越来越流行 4
1.4什么是多用户系统 4
1.5理解Shell 5
1.6获得帮助 5
1.6.1任务1.1:手册页——Unix在线参考 6
1.6.2任务1.2:Unix的其他帮助手段 14
1.7小结 17
1.8练习题 17
1.8.1关键术语 17
1.8.2练习 18
1.8.3预习下一课 18
第2章 第2课时:进入系统和使用命令行 19
2.1本课目录 19
2.2开始会话 19
2.2.1任务2.1:登录和注销系统 19
2.2.2任务2.2:用passwd更改密码 22
2.2.3任务2.3:选择安全密码 23
2.3.1任务2.4:您是谁 24
2.3查看周围有什么 24
2.3.2任务2.5:找出同时登录到系统的其他用户 26
2.3.3任务2.6:每个人在计算机上做什么 27
2.3.4任务2.7:查看当前日期和时间 28
2.4小结 28
2.5练习题 29
2.5.1关键术语 29
2.5.2练习 29
2.5.3预习下一课 29
3.2什么是分层文件系统 31
第3章 第3课时:文件系统 31
3.1本课目录 31
3.2.1任务3.1:Unix文件系统的组织 32
3.2.2目录bin 34
3.2.3目录dev 34
3.2.4目录etc 34
3.2.5目录lib 34
3.2.6目录lost+found 34
3.2.10顶层的其他内容 35
3.2.9目录usr 35
3.2.8目录tmp 35
3.2.7目录mnt和sys 35
3.3目录分隔符 36
3.4相对和绝对文件名的区别 36
3.4.1任务3.2:在Unix中隐藏文件 38
3.4.2任务3.3:特殊目录.和.. 40
3.4.3任务3.4:命令env 41
3.4.4任务3.5:PATH和HOME 42
3.4.5任务3.6:用pwd找出您在哪里 42
3.4.6任务3.7:用cd移动到另一个位置 43
3.6.1关键术语 44
3.5小结 44
3.6练习题 44
3.6.2练习 45
3.6.3预习下一课 46
第4章 第4课时:列出文件和管理磁盘的使用 47
4.1本课目标 47
4.2 ls命令 47
4.2.1任务4.1:有关ls命令的所有知识 48
4.2.2任务4.2:让ls显示更多的内容 49
4.2.3任务4.3:组合标记 51
4.2.4任务4.4:在不改变位置的情况下显示其他目录列表 52
4.3.1任务4.5:改变ls中的排序顺序 54
4.3特殊ls命令标记 54
4.3.2任务4.6:在ls中递归地列出目录树 56
4.3.3任务4.7:ls的长列表格式 57
4.4权限字符串 57
4.4.1任务4.8:ls中用于目录的长列表格式 58
4.4.2任务4.9:使用touch命令建立文件 61
4.4.3任务4.10:使用du检查磁盘空间的使用情况 62
4.4.4任务4.11:使用df查看可用的磁盘空间 63
4.4.5任务4.12:使用compress程序压缩大文件 65
4.6.1关键术语 66
4.5小结 66
4.6练习题 66
4.6.2练习 67
4.6.3预习下一课 67
第5章 第5课时:所有权及权限 68
5.1本课目标 68
5.2使用文件权限 68
5.2.1任务5.1:理解文件权限设置 68
5.2.2任务5.2:目录权限设置 73
5.2.3任务5.3:用chmod修改文件或目录权限 75
5.2.4任务5.4:用chmod设置新的文件权限 77
5.2.5任务5.5:计算数字式的权限字符串 80
5.2.6任务5.6:用umask命令建立文件和目录的默认权限 82
5.2.7任务5.7:为文件或目录指定所有者和组 84
5.3小结 85
5.4练习题 85
5.4.1关键术语 85
5.4.2练习 85
5.4.3预习下一课 86
6.2操作Unix文件系统 87
6.1本课目标 87
第6章 第6课时:创建、移动、重命名、删除文件和目录 87
6.2.1任务6.1:用mkdir创建新目录 88
6.2.2任务6.2:用cp把文件复制到新位置 90
6.2.3任务6.3:用mv将文件移动到新位置 91
6.2.4任务6.4:用mv重命名文件 93
6.2.5任务6.5:用rmdir删除目录 94
6.2.6任务6.6:用rm删除文件 95
6.2.7任务6.7:减少rm命令的危险 96
6.4.1关键术语 98
6.4.2练习 98
6.4练习题 98
6.3小结 98
6.4.3预习下一课 99
第7章 第7课时:查看文件 100
7.1本课目标 100
7.2查看文件内部 100
7.2.1任务7.1:用file确定文件类型 100
7.2.2任务7.2:用file命令查看Unix目录 102
7.2.3任务7.3:用head查看文件的前几行 104
7.2.4任务7.4:用tail查看文件最后的几行内容 106
7.2.5任务7.5:用cat查看文件内容 107
7.2.6任务7.6:用more查看长文件 110
7.3小结 114
7.4练习题 114
7.4.1关键术语 114
7.4.2练习 115
7.4.3预习下一课 115
第8章 第8课时:过滤器和管道传输 116
8.1本课目标 116
8.2扩大命令行 116
8.2.1任务8.1:文件重定向的秘密 116
8.2.2任务8.2:用wc命令统计字数和行数 118
8.2.3任务8.3:用uniq删除冗余的行 119
8.2.4任务8.4:用sort来筛选文件中的信息 121
8.3小结 124
8.4练习题 124
8.4.1关键术语 124
8.4.2练习 124
8.4.3预习下一课 125
第9章 第9课时:通配符及正则表达式 126
9.1本课目标 126
9.2搜索文件 126
9.2.1任务9.1:文件名通配符 126
9.2.2任务9.2:高级文件名通配符 128
9.2.3任务9.3:用grep搜索文件 131
9.2.4任务9.4:创建复杂的正则表达式 133
9.2.5任务9.5:用于复杂表达式的egrep 138
9.2.6任务9.6:用fgrep一次搜索多个模式 140
9.3小结 141
9.4练习题 141
9.4.1关键术语 141
9.4.2练习 142
9.4.3预习下一课 142
10.2.1任务10.1:怎样启动和退出vi 143
10.2 Unix的编辑方式 143
10.1本课目标 143
第10章 第10课时:vi编辑程序入门 143
10.2.2任务10.2:在vi中简单移动光标 147
10.2.3任务10.3:按单词和页移动 150
10.2.4任务10.4:用i、a、o和O向文件中插入文本 153
10.2.5任务10.5:删除文本 159
10.3小结 167
10.4练习题 168
10.4.1关键术语 168
10.4.3预习下一课 169
10.4.2练习 169
第11章 第11课时:高级vi技巧、工具和技术 170
11.1本课目标 170
11.2 vi的高级编辑 170
11.2.1任务11.1:在文件内搜索 170
11.2.2任务11.2:vi中的冒号命令 175
11.2.3任务11.3:怎样正确启动vi 180
11.2.4任务11.4:查找和替换 183
11.2.5任务11.5:更改和替换命令 186
11.2.6任务11.6:用!访问Unix 191
11.3 vi命令小结 197
11.5.2练习 198
11.5.1关键术语 198
11.5练习题 198
11.4小结 198
11.5.3预习下一课 199
第12章 第12课时:emacs编辑程序概况 200
12.1本课目标 200
12.2其他流行的编辑程序:emacs 201
12.2.1任务12.1:启动emacs并插入文本 201
12.2.2任务12.2:在文件中到处移动 203
12.2.3任务12.3:删除字符和单词 207
12.2.4任务12.4:emacs中的查找和替换 210
12.2.5任务12.5:使用emacs教程和帮助系统 213
12.2.6任务12.6:操作其他文件 215
12.3小结 218
12.4练习题 218
12.4.1关键术语 218
12.4.2练习 219
12.4.3预习下一课 219
第13章 第13课时:命令shell入门 220
13.1本课目标 220
13.2命令shell 220
13.2.1任务13.1:有哪些可用的shell 221
13.2.2任务13.2:确定shell 223
13.2.3任务13.3:怎样选择新的shell 225
13.2.4任务13.4:学习shell环境 226
13.2.5任务13.5:使用bash配置文件 229
13.3小结 232
13.4练习题 232
13.4.1关键术语 232
13.4.2练习 232
13.4.3预习下一课 233
14.2.1 任务14.1:shell的历史机制 234
14.2 shell是什么 234
14.1本课目标 234
第14章 第14课时:高级shell交互 234
14.2.2任务14.2:利用历史记录减少键入 236
14.2.3任务14.3:命令别名 240
14.2.4任务14.4:一些有用的别名 242
14.2.5任务14.5:建立用户提示符 243
14.3小结 245
14.4练习题 245
14.4.1关键术语 245
14.4.2练习 246
14.4.3预习下一课 246
15.2建立自己的命令 247
15.1本课目标 247
第15章 第15课时:shell编程概况 247
15.2.1任务15.1:shell变量 248
15.2.2任务15.2:shell运算 249
15.2.3任务15.3:比较功能 251
15.2.4任务15.4:条件表达式 253
15.2.5任务15.5:循环表达式 256
15.2.6任务15.6:bash功能 258
15.3小结 262
15.4练习题 262
15.4.1关键术语 262
15.4.3预习下一课 263
15.4.2练习 263
第16章 第16课时:分离和切割命令管道数据 264
16.1本课目标 264
16.2 awk编程系统 264
任务16.1:学习使用awk 265
16.3在管道中使用cut 269
任务16.2:用cut分离和切割数据 269
16.4用sed和tr内联编辑 271
任务16.3:用sed和tr进行内联编辑 271
16.6.1练习 273
16.6练习题 273
16.5小结 273
16.6.2预习下一课 274
第17章 第17课时:作业控制 275
17.1本课目标 275
17.2处理作业 275
17.2.1任务17.1:shell中的作业控制:停止作业 275
17.2.2任务17.2:前台/后台和Unix程序 278
17.2.3任务17.3:找出正在运行的程序 281
17.2.4任务17.4:用kill终止进程 287
17.4.1关键术语 289
17.4练习题 289
17.3小结 289
17.4.2练习 290
17.4.3预习下一课 290
第18章 第18课时:Unix环境中的打印 291
18.1本课目标 291
18.2生成打印副本 291
18.2.1任务18.1:用printers查找本地打印机 292
18.2.2任务18.2:使用lpr或者lp打印文件 295
18.2.3任务18.3:用pr和col格式化打印作业 299
18.2.4任务18.4:处理打印队列 303
18.4.2练习 306
18.4.1关键术语 306
18.3小结 306
18.4练习题 306
18.4.3预习下一课 307
第19章 第19课时:查找信息和文件 308
19.1本课目标 308
19.2查找信息和文件 308
19.2.1任务19.1:find命令及其选项 308
19.2.2任务19.2:使用find和xargs 313
19.4练习题 315
19.4.1练习 315
19.3小结 315
19.4.2预习下一课 316
第20章 第20课时:归档和备份 317
20.1本课目标 317
20.2 tar磁带归档实用程序 317
任务20.1:学习使用tar 318
20.3使用compress压缩文件 323
任务20.2:在Unix上压缩大文件 323
20.4使用Unix磁带命令:cpio 324
任务20.3:快速学习cpio 325
任务20.4:个人备份方案 327
20.5个人备份解决方案 327
20.6小结 329
20.7练习题 329
20.7.1练习 329
20.7.2预习下一课 330
第21章 第21课时:用电子邮件通信 331
21.1本课目标 331
21.2与世界交互 331
21.2.1任务21.1:用mesg建立消息 332
21.2.2任务21.2:给其他用户写信 333
21.2.3任务21.3:用mailx读电子邮件 336
21.2.4任务21.4:用mailx发送邮件 341
21.2.5任务21.5:Internet电子邮件地址 344
21.2.6任务21.6:另一个聪明的电子邮件程序elm 346
21.2.7任务21.7:Pine概况 348
21.3小结 350
21.4练习题 350
21.4.1关键术语 350
21.4.2练习 350
21.4.3预习下一课 351
22.2.1任务22.1:连接到远程Internet站点 352
22.2超越自己的系统 352
22.1本课目标 352
第22章 第22课时:使用telnet、SSH和ftp 352
22.2.2任务22.2:从Windows系统和Mac系统中使用telnet 355
22.2.3任务22.3:使用SSH保证连接安全 357
22.2.4任务22.4:从其他Internet站点复制文件 358
22.3练习题 368
22.3.1关键术语 368
22.3.2练习 369
22.3.3下一课预习 369
23.2用自己的程序扩展和扩充Unix 370
23.1本课目标 370
第23章 第23课时:Unix中的C 语言编程 370
23.2.1任务23.1:更聪明的FTP客户端fget 371
23.2.2任务23.2:用cc(C语言的编译程序)来编译程序 375
23.2.3任务23.3:无价的make实用程序 376
23.2.4任务23.4:其他有用的C工具 378
23.3小结 381
23.4练习题 381
23.4.1关键术语 381
23.4.2练习 381
23.4.3预习下一课 382
24.1本课目标 383
第24章 第24课时:Unix中的Perl编程 383
24.2.1任务24.1:使用Perl语言编写的货币兑换演示程序 384
24.2灵活而强大的Perl 384
24.2.2任务24.2:用-W检查代码质量 388
24.2.3任务24.3:Perl在线文档和信息 390
24.2.4任务24.4:其他有用的Perl命令 393
24.3小结 394
24.4恭喜 395
24.5练习题 395
24.5.1关键术语 395
24.5.2练习 395
A.2使用Unix Web服务器 396
附录A 使用Apache服务器 396
A.1本课目标 396
A.2.1任务A.1:了解Apache配置文件 397
A.2.2任务A.2:创建简单的CGI程序 401
A.2.3任务A.3:服务器端包含程序 405
A.2.4任务A.4:理解Apache日志文件 407
A.3小结 412
A.4练习题 412
A.4.1关键术语 412
A.4.2练习 412