第1章 认识Linux 1
1.1 Linux简介 1
1.1.1 Linux的由来 1
1.1.2 Linux的内核 5
1.1.3 Linux的特点 6
1.2 Ubuntu安装 7
1.2.1 安装准备 7
1.2.2 双系统 9
1.2.3 虚拟机 25
1.3 Ubuntu简介 44
1.4 小结 49
习题 49
第2章 Ubuntu图形界面 50
2.1 基本操作 50
2.1.1 登录 50
2.1.2 注销 53
2.1.3 关机 54
2.1.4 重启 55
2.2 系统设置 56
2.2.1 显示设置 56
2.2.2 桌面背景修改 62
2.2.3 时间和日期设置 68
2.2.4 磁盘管理 69
2.2.5 网络设置 73
2.3 应用软件 77
2.3.1 访问因特网 78
2.3.2 办公应用 84
2.3.3 图像处理 86
2.3.4 即时通信 87
2.3.5 音频播放 88
2.3.6 视频播放 89
2.4 程序安装 91
2.4.1 添加和删除程序 91
2.4.2 软件包及管理器 94
2.4.3 命令行软件包安装 97
2.4.4 Ubuntu软件库 99
2.5 小结 100
习题 100
第3章 Ubuntu字符界面 102
3.1 Ubuntu命令简介 102
3.2 登录与注销 103
3.2.1 用户登录 103
3.2.2 用户注销 106
3.2.3 退出当前shell 106
3.2.4 修改登录口令 107
3.2.5 关闭系统 108
3.2.6 重启系统 109
3.3 目录与文件 109
3.3.1 显示当前工作目录 110
3.3.2 更改工作目录 110
3.3.3 创建工作目录 110
3.3.4 删除工作目录 111
3.3.5 移动目录或文件 112
3.3.6 复制目录或文件 113
3.3.7 删除目录或文件 114
3.3.8 创建文件或修改时间 116
3.3.9 查看目录和文件 117
3.3.10 以树状图列出目录内容 118
3.3.11 显示文件或文件系统的详细信息 120
3.4 文件内容显示 121
3.4.1 创建和显示文件 121
3.4.2 改变文件权限 122
3.4.3 分页往后显示文件 123
3.4.4 分页自由显示文件 125
3.4.5 指定显示文件前若干行 126
3.4.6 指定显示文件后若干行 127
3.5 文件内容处理 127
3.5.1 对文件内容进行排序 128
3.5.2 检查文件中重复内容 128
3.5.3 在文件中查找指定内容 129
3.5.4 逐行对不同文件进行比较 129
3.5.5 逐字节对不同文件进行比较 131
3.5.6 对有序文件进行比较 131
3.5.7 对文件内容进行剪切 132
3.5.8 对文件内容进行粘贴 133
3.5.9 对文件内容进行统计 134
3.6 文件查找 135
3.6.1 在硬盘上查找文件或目录 135
3.6.2 在数据库中查找文件或目录 136
3.6.3 查找指定文件的位置 138
3.6.4 查找可执行文件的位置 138
3.7 磁盘管理 138
3.7.1 检查磁盘空间占用情况 139
3.7.2 统计目录或文件所占磁盘空间大小 139
3.7.3 挂载文件系统 140
3.7.4 检查磁盘的使用空间与限制 141
3.7.5 打开磁盘空间限制 142
3.7.6 为指定用户分配限额 143
3.7.7 显示用户或工作组的磁盘配额信息 144
3.7.8 显示文件系统的配额信息 144
3.7.9 关闭磁盘空间限制 145
3.7.10 卸载文件系统 146
3.8 备份压缩 146
3.8.1 zip、unzip和zipinfo 146
3.8.2 gzip、gunzip和gzexe 147
3.8.3 bzip2、bunzip2和bzip2recover 149
3.8.4 compress和uncompress 150
3.8.5 uuencode和uudecode 151
3.8.6 dump和tar 152
3.9 获取帮助 154
3.9.1 使用man获取帮助 154
3.9.2 使用whatis获取帮助 155
3.9.3 使用help获取帮助 156
3.9.4 使用info获取帮助 157
3.10 其他命令 157
3.10.1 清除屏幕信息 157
3.10.2 显示文本 158
3.10.3 显示日期和时间 159
3.10.4 查看当前进程 160
3.10.5 终止某一进程 161
3.10.6 显示最近登录系统的用户信息 161
3.10.7 显示历史指令 162
3.10.8 超级权限用户及操作 163
3.10.9 定义别名 164
3.11 小结 165
习题 165
第4章 vi编辑器 168
4.1 开始使用编辑器 168
4.1.1 vi编辑器简介 168
4.1.2 进入vi编辑器 170
4.1.3 文件不存盘退出 175
4.1.4 文件存盘退出 176
4.1.5 文件另存 177
4.1.6 部分文件另存 178
4.1.7 文件覆盖 178
4.1.8 向文件中追加内容 179
4.1.9 撤销对文件内容修改 180
4.2 移动光标 180
4.2.1 使用方向键 180
4.2.2 使用字母键 181
4.2.3 使用组合键 182
4.2.4 逐单词移动 183
4.2.5 在某一行内移动 184
4.2.6 在不同行上移动 184
4.2.7 在屏幕上移动 186
4.2.8 返回初始位置 188
4.2.9 调整显示文本 188
4.3 文本添加 190
4.3.1 在光标当前位置左侧插入文本 190
4.3.2 在光标当前位置右侧插入文本 191
4.3.3 在光标当前位置上方插入文本 192
4.3.4 在光标当前位置下方插入文本 192
4.3.5 在行首插入文本 193
4.3.6 在行末插入文本 193
4.4 文本查找和替换 194
4.4.1 向前查找字符串 194
4.4.2 向后查找字符串 195
4.4.3 替换指定字符 197
4.4.4 单词替换 198
4.4.5 在某一行内替换 199
4.4.6 对所有行进行替换 202
4.5 文本复制、剪切和粘贴 204
4.5.1 复制和粘贴字符 204
4.5.2 剪切和粘贴字符 205
4.5.3 复制、剪切和粘贴指定字符 205
4.5.4 复制和粘贴单词 206
4.5.5 剪切和粘贴单词 207
4.5.6 复制和粘贴行 208
4.5.7 剪切和粘贴行 209
4.5.8 复制和移动文本块 209
4.6 文本删除和撤销 211
4.6.1 删除字符 212
4.6.2 删除单词 213
4.6.3 删除单行 213
4.6.4 删除多行 214
4.6.5 删除指定行 215
4.6.6 重复删除 216
4.6.7 撤销最近一次删除 217
4.6.8 连续撤销删除 217
4.6.9 撤销一行上所有修改 219
4.7 更改vi编辑器设置 219
4.7.1 显示和隐藏行号 220
4.7.2 设置和取消字符自动缩进 222
4.7.3 显示或隐藏当前编辑状态 222
4.7.4 搜索时忽略大小写 223
4.7.5 显示和隐藏特殊字符 224
4.7.6 特殊字符匹配 225
4.7.7 显示长文本行 226
4.7.8 查看编辑器当前设置 227
4.7.9 编辑器的配置文件 228
4.8 高级功能 229
4.8.1 在vi中执行shell指令 229
4.8.2 读入文件和shell命令 230
4.8.3 编辑命令 231
4.8.4 控制字符 232
4.8.5 命令映射 233
4.8.6 命令缩写 234
4.9 小结 235
习题 235
第5章 实用程序初步 241
5.1 多列内容输出 241
5.1.1 按多列格式输出 241
5.1.2 按不同行列顺序 242
5.2 文件内容查找 242
5.2.1 在多个文件内容中查找 242
5.2.2 在文件中查找多个单词 244
5.2.3 查找单词时忽略字母的大小写 244
5.2.4 查找目标内容的文件名 245
5.2.5 使用正则表达式 246
5.3 基本数学运算 247
5.3.1 整数运算 247
5.3.2 浮点运算 248
5.4 文件内容排序 249
5.4.1 对文件内容按字典顺序排序 251
5.4.2 对文件内容不区分字母大小写排序 251
5.4.3 对文件内容反向排序 251
5.4.4 对文件内容按数值大小排序 252
5.4.5 对文件内容按某一字段排序 253
5.4.6 对文件内容限定排序 253
5.4.7 在不同字段分隔符下使用sort 254
5.4.8 对文件排序后重写 255
5.5 文件内容比较 256
5.5.1 识别和删除重复行 256
5.5.2 按行比较两个文件 258
5.5.3 查看文件不同之处 259
5.6 文件内容替换 261
5.6.1 替换指定字符 261
5.6.2 按范围替换 262
5.6.3 删除指定字符 262
5.6.4 结合管道替换 263
5.7 单行编辑数据 264
5.7.1 修改指定单词 264
5.7.2 删除指定行 265
5.7.3 结合正则表达式修改 266
5.8 数据操作工具 266
5.8.1 数据操作工具介绍 266
5.8.2 选择行并输出字段 267
5.8.3 指定字段分隔符 269
5.8.4 awk命令语法 270
5.8.5 使用awk操作数据库 271
5.8.6 选择输出数据库的字段 272
5.8.7 使用awk的预定义变量 274
5.8.8 使用自定义变量、字符串和数字 275
5.8.9 使用正则表达式 278
5.8.10 使用指定的字段选择记录 280
5.8.11 使用awk命令文件 282
5.8.12 awk命令的拓展 285
5.8.13 在awk中进行数学运算 286
5.9 小结 288
习题 289
第6章 Shell脚本编程初步 293
6.1 脚本入门 293
6.1.1 创建脚本 293
6.1.2 调试和运行脚本 294
6.2 条件结构化命令 297
6.2.1 使用case语句 297
6.2.2 使用if语句 300
6.3 循环结构化命令 306
6.3.1 使用for 306
6.3.2 使用while 309
6.3.3 使用until 313
6.3.4 使用break和continue 315
6.4 使用函数 317
6.5 综合实例 324
6.6 小结 326
习题 327
第7章 上机实验 331
7.1 实验一 安装Ubuntu 331
一、实验目的 331
二、实验内容 331
三、实验步骤 331
四、常见问题 332
五、拓展思考 332
7.2 实验二 熟悉Ubuntu图形界面 333
一、实验目的 333
二、实验内容 333
三、实验步骤 333
四、常见问题 335
五、拓展思考 336
7.3 实验三 Ubuntu基本命令(一) 336
一、实验目的 336
二、实验内容 336
三、实验步骤 336
四、常见问题 337
五、拓展思考 338
7.4 实验四 Ubuntu基本命令(二) 338
一、实验目的 338
二、实验内容 338
三、实验步骤 338
四、常见问题 341
五、拓展思考 342
7.5 实验五 Ubuntu高级命令(一) 342
一、实验目的 342
二、实验内容 342
三、实验步骤 342
四、常见问题 344
五、拓展思考 345
7.6 实验六 Ubuntu高级命令(二) 345
一、实验目的 345
二、实验内容 345
三、实验步骤 345
四、常见问题 348
五、拓展思考 349
7.7 实验七 Ubuntu高级命令(三) 349
一、实验目的 349
二、实验内容 349
三、实验步骤 349
四、常见问题 351
五、拓展思考 351
7.8 实验八 vi编辑器(一) 352
一、实验目的 352
二、实验内容 352
三、实验步骤 352
四、常见问题 353
五、拓展思考 354
7.9 实验九 vi编辑器(二) 354
一、实验目的 354
二、实验内容 354
三、实验步骤 354
四、常见问题 356
五、拓展思考 356
7.10 实验十 vi编辑器(三) 357
一、实验目的 357
二、实验内容 357
三、实验步骤 357
四、常见问题 359
五、拓展思考 359
7.11 实验十一 实用程序(一) 359
一、实验目的 359
二、实验内容 359
三、实验步骤 359
四、常见问题 361
五、拓展思考 361
7.12 实验十二 实用程序(二) 362
一、实验目的 362
二、实验内容 362
三、实验步骤 362
四、常见问题 363
五、拓展思考 364
7.13 实验十三 shell编程(一) 364
一、实验目的 364
二、实验内容 364
三、实验步骤 364
四、常见问题 365
五、拓展思考 365
7.14 实验十四 shell编程(二) 365
一、实验目的 365
二、实验内容 365
三、实验步骤 365
四、常见问题 367
五、拓展思考 367
7.15 实验十五 shell编程(三) 367
一、实验目的 367
二、实验内容 367
三、实验步骤 368
四、常见问题 370
五、拓展思考 370
7.16 小结 370