第一章 Linux简介 1
1.1 Internet的产物Linux 1
1.2 Linux的蓝本UNIX 1
1.3 Linux的特色 2
1.4 Linux的缺点 3
1.5 Linux发行版本介绍 4
1.5.1 Linux版本号 4
1.5.2 Linux发行版本 4
1.6 Linux上的应用 6
1.7 小结 8
第二章 Linux安装与配置 9
2.1 Linux发行版本的获取 9
2.1.1 发行版本的选择 9
2.1.2 获取发行版本 9
2.2 所需的硬件支持 10
2.2.1 基本概念 10
2.2.2 Linux的硬件要求 12
2.2.3 装机推荐 17
2.3.1 了解Red Hat Linux 5.1 CD-ROM版本 18
2.3 准备工作 18
2.3.2 准备所需的工具 20
2.3.3 收集必要信息 20
2.3.4 选择安装方式 20
2.3.5 预览安装过程 21
2.3.6 备份文件 21
2.4 制作引导盘 21
2.4.1 制作DOS系统启动盘 21
2.4.2 保存主引导区记录 22
2.4.3 制作Linux安装启动盘 22
2.5.1 什么是硬盘分区 25
2.5 对硬盘分区 25
2.5.2 为什么要进行分区 26
2.5.3 Linux分区命名机制 26
2.5.4 白硬盘分区方法 26
2.5.5 存在未分区空间的硬盘的分区方法 30
2.5.6 多分区硬盘重分区方法 31
2.5.7 唯一DOS主引导分区重分区方法 35
2.6 安装Linux系统 38
2.6.1 拷贝安装文件 38
2.6.2 启动安装进程 38
2.6.4 选择键盘类型 39
2.6.3 选择语言 39
2.6.5 选择安装方式 40
2.6.6 选择升级还是安装 41
2.6.7 建立Linux分区 41
2.6.8 分区格式化 46
2.6.9 选择并安装软件包 46
2.6.10 配置鼠标和时钟 48
2.6.11 选择要启动的服务 48
2.6.12 设置超级用户密码 49
2.6.13 制作系统启动盘 49
2.6.14 配置LILO 50
2.7 小结 51
第三章 运行Linux 52
3.1 启动Linux操作系统 52
3.1.1 硬盘启动 52
3.1.2 软盘启动 52
3.2 登录 53
3.3 虚拟控制台 53
3.4 管理用户 54
3.4.1 添加用户 54
3.4.2 设置密码 55
3.4.3 删除用户 56
3.4.4 设置用户权限 57
3.4.5 用户切换 58
3.4.6 关于超级用户 59
3.5 注销 60
3.6 关机 61
3.7 小结 62
第四章 Linux系统中的命令 63
4.1 命令结构 63
4.2 命令行通配符 64
4.3 环境变量 66
4.4 shell提示符 70
4.5 命令的返回值 72
4.6 标准输入、标准输出和标准报错 72
4.7 重定向机制 73
4.7.1 重定向标准输入 73
4.7.2 重定向标准输出 74
4.7.3 重定向标准报错 75
4.7.4 重定向的混合使用 76
4.8 管道操作 77
4.9 命令行中的引号 78
4.11 有条件地执行命令 80
4.10 连续地执行命令 80
4.12 反引号操作符 81
4.13 小结 82
第五章 文件系统 83
5.1 了解文件系统 83
5.1.1 什么是文件 83
5.1.2 什么是目录 83
5.1.3 文件的命名规则 84
5.1.4 文件系统的层次结构 84
5.1.5 Linux的标准目录 85
5.2 目录操作 87
5.2.1 主目录 87
5.2.2 工作目录 88
5.2.3 显示目录中的内容 88
5.2.4 创建目录 91
5.2.5 删除目录 92
5.2.6 目录间切换 93
5.2.7 目录的改名 94
5.3 文件操作 94
5.3.2 删除文件 95
5.3.1 创建文件 95
5.3.3 拷贝文件 96
5.3.4 显示文件内容 97
5.3.5 移动和改文件名 100
5.3.6 确定文件的类型 101
5.3.7 更改文件的访问权限 104
5.3.8 更改文件的所有权 107
5.3.9 符号链接与硬链接 108
5.4 小结 112
6.1 vi简介 113
第六章 vi编辑器 113
6.2 设置终端类型 114
6.3 启动vi编辑器 114
6.4 vi中的三种模式 116
6.5 移动光标位置 117
6.5.1 上下左右移动光标 117
6.5.2 移到行首和行尾 118
6.5.3 移到指定字符处 119
6.5.4 移动一个字 119
6.5.5 移动一个句子 120
6.6 滚动屏幕上的内容 121
6.5.7 移到屏幕的特定位置 121
6.5.6 移到指定行 121
6.7 修改文件 122
6.7.1 增加文本 123
6.7.2 标记文本块 124
6.7.3 删除文本 124
6.7.4 修改文本 126
6.7.5 拷贝文本 127
6.7.6 移动文本 129
6.7.7 取消上一次编辑操作 129
6.8 查找 130
6.7.8 重复上一次编辑操作 130
6.9 替换 131
6.10 读写文件 132
6.11 退出vi编辑器 133
6.12 设置vi环境 134
6.12.1 设置环境任选项 134
6.12.2 缩写 138
6.12.3 映射 138
6.13 在vi中执行shell命令 139
6.14.1 移动光标命令 140
6.14 vi命令快速参考 140
6.14.2 滚动屏幕命令 141
6.14.3 编辑命令 142
6.14.4 查找命令 143
6.14.5 读写文件和退出vi 143
6.14.6 其他命令模式命令 143
6.14.7 其他最后行模式命令 144
6.15 小结 144
第七章 emacs编辑器 145
7.1 emacs简介 145
7.2 emacs的工作环境 147
7.3 使用emacs 148
7.3.1 启动emacs 148
7.3.2 emacs的屏幕 148
7.3.3 退出emacs 150
7.4 移动光标 151
7.4.1 上下左右移动光标 151
7.4.2 移动一个字 152
7.4.3 移到句首和句尾 152
7.4.4 移到行首和行尾 152
7.5.1 增加文本 153
7.5 编辑文本 153
7.4.5 长距离移动光标 153
7.5.2 删除文本 154
7.5.3 修改文本 154
7.5.4 查找文本 155
7.5.5 替换文本 155
7.5.6 粘贴文本 156
7.6 鼠标操作 157
7.7 emacs命令快速参考 157
7.7.1 移动光标命令 157
7.7.3 查找和替换命令 158
7.7.2 编辑命令 158
7.7.4 读写文件命令 159
7.7.5 缓冲区操作命令 159
7.7.6 标志文本命令 159
7.7.7 其他命令 160
7.8 小结 160
第八章 使用电子邮件 161
8.1 什么是电子邮件 161
8.1.1 电子邮件与普通邮件的区别 161
8.1.2 电子邮件系统工作方式 162
8.1.3 电子邮件地址 164
8.2 电子邮件的组成部分 165
8.2.1 邮件头 165
8.2.2 邮件主体 165
8.2.3 发送邮件 166
8.3 阅读邮件 170
8.4 保存邮件 171
8.5 删除邮件 172
8.6 回复邮件 172
8.7 转发邮件 173
8.8 发送邮件抄件 174
8.9 使用别名 175
8.10 退出mail程序 175
8.11 小结 176
第九章 Linux实用工具 177
9.1 awk程序设计语言 177
9.1.1 awk概述 177
9.1.2 awk的模式和动作 178
9.1.3 运算操作 180
9.1.4 控制语句 182
9.1.5 函数 184
9.2 make 185
9.2.1 make的基本操作 186
9.2.2 make工作过程 188
9.2.3 说明文件 189
9.2.4 动态相关函数 191
9.3 小结 192
第十章 shell及其编程 193
10.1 shell简介 193
10.2 shell特殊变量 194
10.3 shell脚本 196
10.3.2 执行shell脚本 197
10.3.1 建立shell脚本 197
10.3.3 shell脚本的执行环境 199
10.4 shell控制结构 200
10.4.1 if命令——条件语句 200
10.4.2 test命令——条件测试语句 202
10.4.3 for命令——循环语句 205
10.4.4 while命令——无条件循环语句 208
10.4.5 until命令——无条件循环语句 210
10.4.6 case命令——多重选择语句 211
10.4.7 break和continue命令——无条件控制语句 213
10.4.8 read和printf命令——输入输出语句 214
10.4.9 expr命令——计算语句 215
10.4.10 exit命令——终止执行语句 216
10.5 shell函数设计 217
10.6 shell脚本程序的调试 219
10.7 小结 222
第十一章 正则表达式及其应用 224
11.1 正则表达式的语法 224
11.1.1 匹配任意单个字符 224
11.1.2 匹配一个字符集 225
11.1.4 匹配行首和行尾 227
11.1.3 匹配表达式的多次出现 227
11.1.5 匹配字首和字尾 228
11.1.6 转换操作符的特殊含义 229
11.1.7 最长匹配原则 229
11.1.8 扩展的正则表达式 229
11.2 grep命令 231
11.3 fgrep和egrep命令 234
11.4 用正则表达式在vi中查找和替换 235
11.4.1 用正则表达式查找字符串 235
11.4.2 在替换中使用正则表达式 235
11.4.4 替换命令的作用范围 236
11.4.3 在替换中修改匹配串 236
11.4.5 在替换中用正则表达式进行寻址 237
11.5 小结 238
第十二章 X Windows 239
12.1 什么是X Windows 239
12.1.1 一般用户角度 239
12.1.2 程序员的角度 240
12.1.3 基本X系统的结构 241
12.2 安装X Windows 242
12.2.1 XFree86简介 242
12.1.4 基本X系统的操作模式 242
12.2.2 XFree86所需的硬件支持 243
12.2.3 XFree86软件包的装载 245
12.3 配置XFree86 247
12.3.1 装载X底层服务器模块 248
12.3.2 运行配置工具XF86Config 249
12.4 运行XFree86系统 250
12.4.1 手工启动XFree86系统 250
12.4.2 自动启动XFree86系统 251
12.4.3 执行X应用程序 252
12.5 小结 253
12.4.4 退出XFree86系统 253
第十三章 进程控制 254
13.1 基本概念 254
13.1.1 多用户 254
13.1.2 多任务 255
13.1.3 进程 255
13.2 启动进程 256
13.2.1 前台启动 256
13.2.2 后台启动 257
13.2.3 定时启动 258
13.2.4 用管道启动多个进程 260
13.2.5 用batch命令启动进程 261
13.2.6 cron机制 261
13.3 查看进程状态 263
13.4 查看用户信息 266
13.5 调整进程优先级 267
13.6 撤销进程 267
13.7 进程处理 269
13.7.1 不受干扰运行命令 269
13.7.2 暂停进程的启动 269
13.8 小结 270
13.7.3 测试进程运行时间 270
14.1 假脱打印原理 271
第十四章 打印控制 271
14.2 格式化打印文件 272
14.2.1 pr过滤程序 272
14.2.2 nroff格式化打印文件 273
14.3 打印文件(lpr) 274
14.4 控制打印操作 275
14.4.1 打印队列检测(lpq) 275
14.4.2 打印控制(lpc) 276
14.5 小结 277
14.4.3 删除打印作业(lprm) 277
第十五章 核心配置文件说明 278
15.1 系统引导配置文件(inittab) 278
15.2 系统密码文件(passwd) 281
15.3 密码屏蔽文件(shadow) 282
15.4 用户组定义文件(group) 284
15.5 Linux启动配置文件(lilo.conf) 286
15.6 shell轮廓文件(profile) 287
15.7 BASH shell资源文件(bashrc) 290
15.8 系统周期调度配置文件(crontab) 291
15.9 文件系统信息文件(fstab) 293
15.10 打印机设置文件(printcap) 295
15.11 邮件配置文件(.mailrc) 297
15.12 小结 299
第十六章 获取帮助 300
16.1 联机帮助 300
16.1.1 man命令 300
16.1.2 locate命令 302
16.2 文档资料 303
16.1.3 info命令 303
16.2.1 软件包随包文档 304
16.2.2 HOWTO和FAQ文档 304
16.3 网络信息 305
16.4 Usenet新闻组 305
16.4.1 Usenet新闻组简介 306
16.4.2 如何使用Usenet 306
16.4.3 Linux新闻组介绍 308
16.5 小结 310
附录A 免费FTP站点和Linux发行商 311
附录B 常用命令汇总 313