书籍详情
UNIX教程(第二版)
作者:(美)萨瓦 等著,张玉洁 等译;张玉洁译
出版社:机械工业出版社
出版时间:2006-04-01
ISBN:9787111186021
定价:¥69.00
购买这本书可以去
内容简介
本书是一本优秀的UNIX基础教材。作者深入浅出地剖析了UNIX操作系统的各个方面,系统地介绍了UNIX的用户接口,系统内部的工作情况等。本书从UNIX系统最基本的操作开始,依次阐述了UNIX shell操作、文本文件编辑、收发电子邮件、UNIX文件与文件系统的操作、输入输出管理、进程管理、网络管理以及常用shell的编程等。书后的附录详尽介绍了UNIX的终端命令及命令参数和选项,精心设计的章内练习和章末问题有助于读者及时巩固新的命令、原语和概念。本书特点:●简明清晰的理论知识,设计精彩的示例,精练的相关主题,帮助读者理解复杂概念的习题。●独一无二的组织结构,帮助初学者通过掌握UNIX应用程序用户接口,从而增强对操作系统基本原理的理解。●涵盖了UNIX软件开发工具以及速查向导,为新手和富有经验的程序员带来便利。●精心整合的图文形式描述UNIX的命令和概念,有助于理解深奥的概念和主题。第2版新增内容:◆本书开篇的"UNIX操作系统快速入门"一章,帮助读者快速掌握在UNIX下工作的基本方法。◆关于图形化Emacs编辑器的内容,用全新的一节详细介绍基于IMAP和POP3的UNIX电子邮件软件??图形化Kmail。◆加强了对进程属性和UNIX进程层次结构的说明。◆增加了一些新命令,如host、dig、ssh(安全Shell)、scp和sftp。◆编译C++和Java程序的相关资料(第20章)。◆完全更新了第21章,包括XFree86、fvwm2、如何使用xconfigurator修改X Window系统的默认设定、如何安装UNIX包以及介绍Mac OS X UNIX和Aqua GUI。◆第8章中的访问权限,以及第12章中的UNIX FIFO。 第0章UNIX操作系统快速入门第1章操作系统概述第2章UNIX操作系统简史第3章UNIX起步第4章UNIX Shell第5章编辑文本文件第6章电子邮件第7章文件与文件系统结构第8章文件安全性第9章基本文件处理第10章高级文件处理第11章文件共享第12章重定向与管道第13章进程第14章网络与互联网第15章 Bourne Shell编程入门第16章高级Bourne Shell编程第17章 C Shell编程入门第18章高级C Shell编程第19章文件系统的备份第20章UNIX软件开发工具第21章UNIX GUI基础
作者简介
暂缺《UNIX教程(第二版)》作者简介
目录
第0章 UNIX操作系统快速入门 1
0.1 导言 1
0.2 UNIX命令的结构 1
0.3 登录与退出系统 2
0.3.1 通过UNIX终端连接 3
0.3.2 通过Microsoft Windows上的PuTTy软件连接 4
0.3.3 通过Microsoft Windows上的Telnet客户端软件连接 5
0.4 UNIX的文件维护与帮助命令 6
0.4.1 文件与目录的结构 6
0.4.2 查看文件内容 7
0.4.3 创建、删除和管理文件 7
0.4.4 创建、删除和管理目录 10
0.4.5 使用man命令获得帮助 13
0.4.6 获取帮助的其他方法 15
0.5 UNIX常用命令 15
0.5.1 检查系统设置 15
0.5.2 打印命令以及常用命令 16
0.5.3 消息命令 17
0.6 命令别名 18
小结 21
习题 21
第1章 操作系统概述 22
1.1 导言 22
1.2 什么是操作系统 22
1.3 操作系统的功能 23
1.4 字符用户界面与图形用户界面 23
1.5 操作系统的分类 24
1.6 UNIX产品系列 24
小结 24
习题 25
第2章 UNIX操作系统简史 26
2.1 导言 26
2.2 UNIX操作系统的发展历史 26
2.2.1 开端 26
2.2.2 操作系统研究 27
2.2.3 AT&T System V 27
2.2.4 伯克利软件发布版本 27
2.2.5 Shell的历史 27
2.2.6 当前与未来的发展—Linux 28
2.3 UNIX系统的变种 28
2.4 Web资源 28
小结 29
习题 29
第3章 UNIX起步 30
3.1 导言 30
3.2 计算机系统硬件 30
3.2.1 主存 30
3.2.2 中央处理单元 31
3.2.3 磁盘 31
3.2.4 总线 31
3.2.5 输入/输出设备 32
3.3 UNIX软件体系结构 32
3.3.1 设备驱动程序层 32
3.3.2 UNIX内核 32
3.3.3 系统调用接口 33
3.3.4 语言库 33
3.3.5 UNIX Shell 34
3.3.6 应用程序 34
3.4 登录与退出系统 34
3.5 修正错误 36
3.6 重要的系统设置 36
小结 38
习题 38
第4章 UNIX Shell 39
4.1 导言 39
4.2 各种UNIX Shell 40
4.2.1 Shell程序 40
4.2.2 选择合适的Shell 40
4.2.3 改变Shell的方法 41
4.2.4 Shell启动文件与环境变量 42
4.3 Shell元字符 43
小结 44
习题 44
第5章 编辑文本文件 46
5.1 导言 46
5.2 使用pico文本编辑器进行简单的编辑 47
5.2.1 使用pico文本编辑器创建电子邮件文本 47
5.2.2 开始、保存文件以及退出编辑 47
5.2.3 常用的键盘命令与光标控制 48
5.2.4 剪贴与查找 50
5.3 使用vi文本编辑器获取更多控制 50
5.3.1 Shell脚本文件 51
5.3.2 开始、保存文件以及退出编辑 51
5.3.3 vi命令格式与操作模式 53
5.3.4 光标移动与编辑命令 56
5.3.5 拖放(复制与粘贴)与置换(查找与替换) 57
5.3.6 设置vi环境 58
5.3.7 在vi中执行Shell命令 59
5.4 使用emacs文本编辑器获得最大的控制 59
5.4.1 emacs的界面、基本概念以及特性 59
5.4.2 DOS 别名 61
5.4.3 开始emacs、保存文件以及退出编辑 61
5.4.4 光标移动与编辑命令 62
5.4.5 键盘宏 64
5.4.6 剪切、复制、粘贴与替换 65
5.4.7 使用GNU emacs进行纯图形化文本编辑 67
5.4.8 编辑数据文件 67
5.4.9 开始GNU emacs、保存文件以及退出编辑 68
5.4.10 emacs图形化菜单 69
5.4.11 创建并编辑C程序 70
5.4.12 在多个缓冲区中工作 72
小结 75
习题 75
第6章 电子邮件 77
6.1 导言 77
6.1.1 概述 77
6.1.2 电子邮件的特性 78
6.2 如何有效地使用UNIX的mail命令 79
6.3 图形化电子邮件系统Kmail 80
6.3.1 Kmail起步 80
6.3.2 在Kmail中读电子邮件 83
6.3.3 在Kmail中发送电子邮件 84
6.3.4 将电子邮件简单过滤到文件夹中 86
6.4 另一个全屏幕显示的电子邮件系统pine 87
6.4.1 使用pine发送带附件的电子邮件 87
6.4.2 使用pine发送电子邮件 89
6.4.3 使用pine阅读电子邮件 90
6.4.4 使用pine处理文件夹中的电子邮件 91
6.4.5 使用pine地址簿 92
6.4.6 pine命令小结 94
小结 95
习题 95
第7章 文件与文件系统结构 97
7.1 导言 97
7.2 UNIX文件概念 97
7.3 文件类型 97
7.3.1 普通/简单文件 98
7.3.2 目录 98
7.3.3 链接文件 98
7.3.4 特殊(设备)文件 99
7.3.5 命名管道(FIFO) 99
7.3.6 套接字 99
7.4 文件系统结构 99
7.4.1 文件系统的组织结构 99
7.4.2 起始目录与当前工作目录 99
7.4.3 路径名:绝对路径名与相对路径名 100
7.4.4 标准目录与文件 101
7.5 文件结构导航 102
7.5.1 确定起始目录的绝对路径名 102
7.5.2 浏览文件系统 103
7.5.3 创建文件 105
7.5.4 创建与删除目录 105
7.5.5 确定文件属性 106
7.5.6 确定文件内容的类型 108
7.6 UNIX中文件的表示与存储 109
7.7 标准文件与文件描述符 110
7.8 文件结束标记 111
小结 111
习题 112
第8章 文件安全性 114
8.1 导言 114
8.2 基于口令的保护 114
8.3 基于加密的保护 115
8.4 基于访问权限的保护 115
8.4.1 用户类型 115
8.4.2 文件操作/访问权限的类型 117
8.4.3 目录的访问权限 118
8.5 确定与修改文件的访问权限 118
8.5.1 确定文件的访问权限 118
8.5.2 修改文件的访问权限 119
8.5.3 目录的访问特权 121
8.5.4 默认的文件访问权限 123
8.6 特殊访问位 123
8.6.1 设置用户ID(SUID)位 123
8.6.2 设置组ID(SGID)位 125
8.6.3 粘着位 125
小结 126
习题 127
第9章 基本文件处理 129
9.1 导言 129
9.2 查看文本文件内容 129
9.2.1 查看完整的文件 129
9.2.2 一次查看一页文件内容 131
9.2.3 查看文件的头尾部分 132
9.3 复制、移动与删除文件 136
9.3.1 复制文件 136
9.3.2 移动文件 138
9.3.3 删除文件 139
9.3.4 确定文件大小 141
9.4 追加文件 142
9.5 合并文件 144
9.6 比较文件 145
9.7 删除重复的行 147
9.8 打印文件与控制打印作业 149
9.8.1 UNIX文件打印机制 149
9.8.2 打印文件 149
9.8.3 确定打印请求状态 151
9.8.4 取消打印作业 152
小结 153
习题 153
第10章 高级文件处理 155
10.1 导言 155
10.2 正则表达式 155
10.3 文件压缩 157
10.3.1 compress命令 157
10.3.2 uncompress命令 158
10.3.3 gzip命令 159
10.3.4 gunzip命令 159
10.3.5 gzexe命令 160
10.3.6 zcat命令 161
10.3.7 pack和unpack命令 162
10.4 文件排序 162
10.5 命令与文件的查找 165
10.6 在文件中查找 167
10.7 剪切与粘贴 170
10.8 编码与解码 174
10.9 文件加密与解密 175
小结 178
习题 178
第11章 文件共享 180
11.1 导言 180
11.2 复制共享文件 180
11.3 小组成员的共同登录 180
11.4 为共享文件设置适当的访问权限 181
11.5 小组成员的共同组 181
11.6 通过链接实现文件共享 181
11.6.1 硬链接 181
11.6.2 硬链接的缺点 186
11.6.3 软/符号链接 187
11.6.4 符号链接的优缺点 191
小结 191
习题 192
第12章 重定向与管道 193
12.1 导言 193
12.2 标准文件 193
12.3 输入重定向 194
12.4 输出重定向 195
12.5 合并输入和输出重定向 196
12.6 带文件描述符的输入和输出重定向 196
12.7 标准错误重定向 197
12.8 在一个命令中重定向标准输出和标准错误 198
12.9 在一个命令中重定向标准输入、标准输出和标准错误 200
12.10 不覆盖文件内容的重定向(追加) 200
12.11 UNIX管道 201
12.12 重定向与管道的组合 204
12.13 C Shell中的错误重定向 204
12.14 I/O与错误重定向小结 206
12.15 FIFO 207
小结 210
习题 210
第13章 进程 213
13.1 导言 213
13.2 同时运行多个进程 213
13.3 UNIX进程的状态 214
13.4 执行shell命令 215
13.5 进程的属性 217
13.6 进程与作业控制 221
13.6.1 前台进程与后台进程以及相关命令 221
13.6.2 UNIX守护进程 226
13.6.3 命令的顺序执行与并行执行 226
13.6.4 命令与进程的异常终止 229
13.7 UNIX进程的层次结构 231
小结 232
习题 233
第14章 网络与互联网 235
14.1 导言 235
14.2 计算机网络与互联网 235
14.3 使用计算机网络和互联网的原因 236
14.4 网络模型 236
14.5 TCP/IP协议族 237
14.5.1 TCP与UDP 237
14.5.2 应用程序数据路由—网际协议(IP) 238
14.5.3 IPv4地址的点分十进制表示法 239
14.5.4 符号名称 240
14.5.5 名称到IP地址的转换—域名系统 242
14.5.6 请求注解(RFC) 245
14.6 Internet服务与协议 246
14.7 客户/服务器软件模型 246
14.8 应用软件 247
14.8.1 显示主机名 247
14.8.2 显示网络上正在使用主机的用户信息列表 247
14.8.3 显示网络上主机的状态 249
14.8.4 测试网络连接 249
14.8.5 显示用户信息 250
14.8.6 远程登录 253
14.8.7 远程执行命令 260
14.8.8 文件传输 262
14.8.9 远程复制 265
14.8.10 安全Shell以及相关的命令 266
14.8.11 交互式聊天 268
14.8.12 跟踪站点间的路由 269
14.9 重要的因特网组织 270
14.10 Web资源 270
小结 271
习题 271
第15章 Bourne Shell编程入门 273
15.1 导言 273
15.2 运行Bourne Shell脚本 273
15.3 Shell变量及其相关命令 274
15.3.1 读写Shell变量 277
15.3.2 命令替换 278
15.3.3 导出环境变量 279
15.3.4 重置变量 280
15.3.5 创建只读用户自定义变量 281
15.3.6 读取标准输入 282
15.4 Shell脚本的参数传递 283
15.5 注释与程序头 286
15.6 程序控制流命令 287
15.6.1 if-then-elif-else-fi语句 287
15.6.2 for语句 293
15.6.3 while语句 294
15.6.4 until语句 296
15.6.5 break和continue命令 296
15.6.6 case语句 297
小结 300
习题 301
第16章 高级Bourne Shell编程 303
16.1 导言 303
16.2 数值型数据的处理 303
16.3 Here文档 308
16.4 中断处理 310
16.5 exec命令与文件I/O 313
16.5.1 不创建新进程的命令执行 313
16.5.2 使用exec命令进行文件I/O 314
16.6 Bourne Shell函数 320
16.6.1 使用函数的原因 320
16.6.2 函数定义 320
16.6.3 函数调用 321
16.6.4 函数举例 321
16.7 调试Shell程序 323
小结 324
习题 324
第17章 C Shell编程入门 326
17.1 导言 326
17.2 运行C Shell脚本 326
17.3 Shell变量与相关命令 327
17.3.1 读写Shell变量 330
17.3.2 命令替换 331
17.3.3 导出环境变量 332
17.3.4 变量重置 333
17.3.5 读取标准输入 334
17.4 向Shell脚本传递参数 335
17.5 注释与程序头 337
17.6 程序控制流命令 338
17.6.1 if-then-else-endif语句 338
17.6.2 foreach语句 344
17.6.3 while语句 345
17.6.4 break、continue和goto语句 346
17.6.5 switch语句 347
小结 349
习题 350
第18章 高级C Shell编程 352
18.1 导言 352
18.2 数值型数据处理 352
18.3 数组处理 353
18.4 Here文档 357
18.5 中断处理 359
18.6 调试Shell程序 362
小结 363
习题 363
第19章 文件系统的备份 364
19.1 导言 364
19.2 使用tar进行文件的归档和恢复 364
19.2.1 文件归档 365
19.2.2 恢复归档文件 367
19.2.3 复制目录层次 369
19.3 以tar格式发布软件 370
小结 371
习题 371
第20章 UNIX软件开发工具 372
20.1 导言 372
20.2 计算机编程语言 372
20.3 编译过程 373
20.4 软件工程生命周期 374
20.5 程序生成工具 375
20.5.1 生成C源文件 375
20.5.2 缩排C源代码 375
20.5.3 编译C、C++和JAVA程序 377
20.5.4 处理基于模块的C软件 381
20.5.5 建立库中的目标文件 388
20.5.6 使用库 390
20.5.7 版本控制 393
20.6 静态分析工具 419
20.6.1 验证代码的可移植性 419
20.6.2 源代码度量分析 422
20.7 动态分析工具 423
20.7.1 跟踪程序的执行 423
20.7.2 调试源代码 424
20.7.3 运行期性能 434
20.8 Web资源 435
小结 437
习题 437
第21章 UNIX GUI基础 440
21.1 导言 440
21.2 Xfree86基础 440
21.2.1 Xfree86的优点 441
21.2.2 交互行为的关键组成要素—事件与请求 442
21.2.3 用户界面中窗口管理器的角色以及fvwm2 443
21.2.4 定制XFree86和fvwm2 446
21.3 KDE桌面管理器 451
21.3.1 登录与退出 452
21.3.2 KDE面板 453
21.3.3 安装新软件包 456
21.3.4 KWM窗口管理器 458
21.3.5 KDE控制中心 461
21.3.6 文件管理器—Konqueror 461
21.4 Mac OS X的Aqua GUI 463
21.4.1 Mac桌面的外观 464
21.4.2 Dock 467
21.4.3 定制Dock 468
21.4.4 安装UNIX应用程序的Fink包管理器 470
21.4.5 System Preference的修改与终端检查器 472
21.4.6 Finder Preferences 474
21.4.7 使用OS X Finder搜索整个文件系统 474
21.5 Web资源 477
小结 478
习题 478
附录 命令字典 481
术语表 554
索引 570
0.1 导言 1
0.2 UNIX命令的结构 1
0.3 登录与退出系统 2
0.3.1 通过UNIX终端连接 3
0.3.2 通过Microsoft Windows上的PuTTy软件连接 4
0.3.3 通过Microsoft Windows上的Telnet客户端软件连接 5
0.4 UNIX的文件维护与帮助命令 6
0.4.1 文件与目录的结构 6
0.4.2 查看文件内容 7
0.4.3 创建、删除和管理文件 7
0.4.4 创建、删除和管理目录 10
0.4.5 使用man命令获得帮助 13
0.4.6 获取帮助的其他方法 15
0.5 UNIX常用命令 15
0.5.1 检查系统设置 15
0.5.2 打印命令以及常用命令 16
0.5.3 消息命令 17
0.6 命令别名 18
小结 21
习题 21
第1章 操作系统概述 22
1.1 导言 22
1.2 什么是操作系统 22
1.3 操作系统的功能 23
1.4 字符用户界面与图形用户界面 23
1.5 操作系统的分类 24
1.6 UNIX产品系列 24
小结 24
习题 25
第2章 UNIX操作系统简史 26
2.1 导言 26
2.2 UNIX操作系统的发展历史 26
2.2.1 开端 26
2.2.2 操作系统研究 27
2.2.3 AT&T System V 27
2.2.4 伯克利软件发布版本 27
2.2.5 Shell的历史 27
2.2.6 当前与未来的发展—Linux 28
2.3 UNIX系统的变种 28
2.4 Web资源 28
小结 29
习题 29
第3章 UNIX起步 30
3.1 导言 30
3.2 计算机系统硬件 30
3.2.1 主存 30
3.2.2 中央处理单元 31
3.2.3 磁盘 31
3.2.4 总线 31
3.2.5 输入/输出设备 32
3.3 UNIX软件体系结构 32
3.3.1 设备驱动程序层 32
3.3.2 UNIX内核 32
3.3.3 系统调用接口 33
3.3.4 语言库 33
3.3.5 UNIX Shell 34
3.3.6 应用程序 34
3.4 登录与退出系统 34
3.5 修正错误 36
3.6 重要的系统设置 36
小结 38
习题 38
第4章 UNIX Shell 39
4.1 导言 39
4.2 各种UNIX Shell 40
4.2.1 Shell程序 40
4.2.2 选择合适的Shell 40
4.2.3 改变Shell的方法 41
4.2.4 Shell启动文件与环境变量 42
4.3 Shell元字符 43
小结 44
习题 44
第5章 编辑文本文件 46
5.1 导言 46
5.2 使用pico文本编辑器进行简单的编辑 47
5.2.1 使用pico文本编辑器创建电子邮件文本 47
5.2.2 开始、保存文件以及退出编辑 47
5.2.3 常用的键盘命令与光标控制 48
5.2.4 剪贴与查找 50
5.3 使用vi文本编辑器获取更多控制 50
5.3.1 Shell脚本文件 51
5.3.2 开始、保存文件以及退出编辑 51
5.3.3 vi命令格式与操作模式 53
5.3.4 光标移动与编辑命令 56
5.3.5 拖放(复制与粘贴)与置换(查找与替换) 57
5.3.6 设置vi环境 58
5.3.7 在vi中执行Shell命令 59
5.4 使用emacs文本编辑器获得最大的控制 59
5.4.1 emacs的界面、基本概念以及特性 59
5.4.2 DOS 别名 61
5.4.3 开始emacs、保存文件以及退出编辑 61
5.4.4 光标移动与编辑命令 62
5.4.5 键盘宏 64
5.4.6 剪切、复制、粘贴与替换 65
5.4.7 使用GNU emacs进行纯图形化文本编辑 67
5.4.8 编辑数据文件 67
5.4.9 开始GNU emacs、保存文件以及退出编辑 68
5.4.10 emacs图形化菜单 69
5.4.11 创建并编辑C程序 70
5.4.12 在多个缓冲区中工作 72
小结 75
习题 75
第6章 电子邮件 77
6.1 导言 77
6.1.1 概述 77
6.1.2 电子邮件的特性 78
6.2 如何有效地使用UNIX的mail命令 79
6.3 图形化电子邮件系统Kmail 80
6.3.1 Kmail起步 80
6.3.2 在Kmail中读电子邮件 83
6.3.3 在Kmail中发送电子邮件 84
6.3.4 将电子邮件简单过滤到文件夹中 86
6.4 另一个全屏幕显示的电子邮件系统pine 87
6.4.1 使用pine发送带附件的电子邮件 87
6.4.2 使用pine发送电子邮件 89
6.4.3 使用pine阅读电子邮件 90
6.4.4 使用pine处理文件夹中的电子邮件 91
6.4.5 使用pine地址簿 92
6.4.6 pine命令小结 94
小结 95
习题 95
第7章 文件与文件系统结构 97
7.1 导言 97
7.2 UNIX文件概念 97
7.3 文件类型 97
7.3.1 普通/简单文件 98
7.3.2 目录 98
7.3.3 链接文件 98
7.3.4 特殊(设备)文件 99
7.3.5 命名管道(FIFO) 99
7.3.6 套接字 99
7.4 文件系统结构 99
7.4.1 文件系统的组织结构 99
7.4.2 起始目录与当前工作目录 99
7.4.3 路径名:绝对路径名与相对路径名 100
7.4.4 标准目录与文件 101
7.5 文件结构导航 102
7.5.1 确定起始目录的绝对路径名 102
7.5.2 浏览文件系统 103
7.5.3 创建文件 105
7.5.4 创建与删除目录 105
7.5.5 确定文件属性 106
7.5.6 确定文件内容的类型 108
7.6 UNIX中文件的表示与存储 109
7.7 标准文件与文件描述符 110
7.8 文件结束标记 111
小结 111
习题 112
第8章 文件安全性 114
8.1 导言 114
8.2 基于口令的保护 114
8.3 基于加密的保护 115
8.4 基于访问权限的保护 115
8.4.1 用户类型 115
8.4.2 文件操作/访问权限的类型 117
8.4.3 目录的访问权限 118
8.5 确定与修改文件的访问权限 118
8.5.1 确定文件的访问权限 118
8.5.2 修改文件的访问权限 119
8.5.3 目录的访问特权 121
8.5.4 默认的文件访问权限 123
8.6 特殊访问位 123
8.6.1 设置用户ID(SUID)位 123
8.6.2 设置组ID(SGID)位 125
8.6.3 粘着位 125
小结 126
习题 127
第9章 基本文件处理 129
9.1 导言 129
9.2 查看文本文件内容 129
9.2.1 查看完整的文件 129
9.2.2 一次查看一页文件内容 131
9.2.3 查看文件的头尾部分 132
9.3 复制、移动与删除文件 136
9.3.1 复制文件 136
9.3.2 移动文件 138
9.3.3 删除文件 139
9.3.4 确定文件大小 141
9.4 追加文件 142
9.5 合并文件 144
9.6 比较文件 145
9.7 删除重复的行 147
9.8 打印文件与控制打印作业 149
9.8.1 UNIX文件打印机制 149
9.8.2 打印文件 149
9.8.3 确定打印请求状态 151
9.8.4 取消打印作业 152
小结 153
习题 153
第10章 高级文件处理 155
10.1 导言 155
10.2 正则表达式 155
10.3 文件压缩 157
10.3.1 compress命令 157
10.3.2 uncompress命令 158
10.3.3 gzip命令 159
10.3.4 gunzip命令 159
10.3.5 gzexe命令 160
10.3.6 zcat命令 161
10.3.7 pack和unpack命令 162
10.4 文件排序 162
10.5 命令与文件的查找 165
10.6 在文件中查找 167
10.7 剪切与粘贴 170
10.8 编码与解码 174
10.9 文件加密与解密 175
小结 178
习题 178
第11章 文件共享 180
11.1 导言 180
11.2 复制共享文件 180
11.3 小组成员的共同登录 180
11.4 为共享文件设置适当的访问权限 181
11.5 小组成员的共同组 181
11.6 通过链接实现文件共享 181
11.6.1 硬链接 181
11.6.2 硬链接的缺点 186
11.6.3 软/符号链接 187
11.6.4 符号链接的优缺点 191
小结 191
习题 192
第12章 重定向与管道 193
12.1 导言 193
12.2 标准文件 193
12.3 输入重定向 194
12.4 输出重定向 195
12.5 合并输入和输出重定向 196
12.6 带文件描述符的输入和输出重定向 196
12.7 标准错误重定向 197
12.8 在一个命令中重定向标准输出和标准错误 198
12.9 在一个命令中重定向标准输入、标准输出和标准错误 200
12.10 不覆盖文件内容的重定向(追加) 200
12.11 UNIX管道 201
12.12 重定向与管道的组合 204
12.13 C Shell中的错误重定向 204
12.14 I/O与错误重定向小结 206
12.15 FIFO 207
小结 210
习题 210
第13章 进程 213
13.1 导言 213
13.2 同时运行多个进程 213
13.3 UNIX进程的状态 214
13.4 执行shell命令 215
13.5 进程的属性 217
13.6 进程与作业控制 221
13.6.1 前台进程与后台进程以及相关命令 221
13.6.2 UNIX守护进程 226
13.6.3 命令的顺序执行与并行执行 226
13.6.4 命令与进程的异常终止 229
13.7 UNIX进程的层次结构 231
小结 232
习题 233
第14章 网络与互联网 235
14.1 导言 235
14.2 计算机网络与互联网 235
14.3 使用计算机网络和互联网的原因 236
14.4 网络模型 236
14.5 TCP/IP协议族 237
14.5.1 TCP与UDP 237
14.5.2 应用程序数据路由—网际协议(IP) 238
14.5.3 IPv4地址的点分十进制表示法 239
14.5.4 符号名称 240
14.5.5 名称到IP地址的转换—域名系统 242
14.5.6 请求注解(RFC) 245
14.6 Internet服务与协议 246
14.7 客户/服务器软件模型 246
14.8 应用软件 247
14.8.1 显示主机名 247
14.8.2 显示网络上正在使用主机的用户信息列表 247
14.8.3 显示网络上主机的状态 249
14.8.4 测试网络连接 249
14.8.5 显示用户信息 250
14.8.6 远程登录 253
14.8.7 远程执行命令 260
14.8.8 文件传输 262
14.8.9 远程复制 265
14.8.10 安全Shell以及相关的命令 266
14.8.11 交互式聊天 268
14.8.12 跟踪站点间的路由 269
14.9 重要的因特网组织 270
14.10 Web资源 270
小结 271
习题 271
第15章 Bourne Shell编程入门 273
15.1 导言 273
15.2 运行Bourne Shell脚本 273
15.3 Shell变量及其相关命令 274
15.3.1 读写Shell变量 277
15.3.2 命令替换 278
15.3.3 导出环境变量 279
15.3.4 重置变量 280
15.3.5 创建只读用户自定义变量 281
15.3.6 读取标准输入 282
15.4 Shell脚本的参数传递 283
15.5 注释与程序头 286
15.6 程序控制流命令 287
15.6.1 if-then-elif-else-fi语句 287
15.6.2 for语句 293
15.6.3 while语句 294
15.6.4 until语句 296
15.6.5 break和continue命令 296
15.6.6 case语句 297
小结 300
习题 301
第16章 高级Bourne Shell编程 303
16.1 导言 303
16.2 数值型数据的处理 303
16.3 Here文档 308
16.4 中断处理 310
16.5 exec命令与文件I/O 313
16.5.1 不创建新进程的命令执行 313
16.5.2 使用exec命令进行文件I/O 314
16.6 Bourne Shell函数 320
16.6.1 使用函数的原因 320
16.6.2 函数定义 320
16.6.3 函数调用 321
16.6.4 函数举例 321
16.7 调试Shell程序 323
小结 324
习题 324
第17章 C Shell编程入门 326
17.1 导言 326
17.2 运行C Shell脚本 326
17.3 Shell变量与相关命令 327
17.3.1 读写Shell变量 330
17.3.2 命令替换 331
17.3.3 导出环境变量 332
17.3.4 变量重置 333
17.3.5 读取标准输入 334
17.4 向Shell脚本传递参数 335
17.5 注释与程序头 337
17.6 程序控制流命令 338
17.6.1 if-then-else-endif语句 338
17.6.2 foreach语句 344
17.6.3 while语句 345
17.6.4 break、continue和goto语句 346
17.6.5 switch语句 347
小结 349
习题 350
第18章 高级C Shell编程 352
18.1 导言 352
18.2 数值型数据处理 352
18.3 数组处理 353
18.4 Here文档 357
18.5 中断处理 359
18.6 调试Shell程序 362
小结 363
习题 363
第19章 文件系统的备份 364
19.1 导言 364
19.2 使用tar进行文件的归档和恢复 364
19.2.1 文件归档 365
19.2.2 恢复归档文件 367
19.2.3 复制目录层次 369
19.3 以tar格式发布软件 370
小结 371
习题 371
第20章 UNIX软件开发工具 372
20.1 导言 372
20.2 计算机编程语言 372
20.3 编译过程 373
20.4 软件工程生命周期 374
20.5 程序生成工具 375
20.5.1 生成C源文件 375
20.5.2 缩排C源代码 375
20.5.3 编译C、C++和JAVA程序 377
20.5.4 处理基于模块的C软件 381
20.5.5 建立库中的目标文件 388
20.5.6 使用库 390
20.5.7 版本控制 393
20.6 静态分析工具 419
20.6.1 验证代码的可移植性 419
20.6.2 源代码度量分析 422
20.7 动态分析工具 423
20.7.1 跟踪程序的执行 423
20.7.2 调试源代码 424
20.7.3 运行期性能 434
20.8 Web资源 435
小结 437
习题 437
第21章 UNIX GUI基础 440
21.1 导言 440
21.2 Xfree86基础 440
21.2.1 Xfree86的优点 441
21.2.2 交互行为的关键组成要素—事件与请求 442
21.2.3 用户界面中窗口管理器的角色以及fvwm2 443
21.2.4 定制XFree86和fvwm2 446
21.3 KDE桌面管理器 451
21.3.1 登录与退出 452
21.3.2 KDE面板 453
21.3.3 安装新软件包 456
21.3.4 KWM窗口管理器 458
21.3.5 KDE控制中心 461
21.3.6 文件管理器—Konqueror 461
21.4 Mac OS X的Aqua GUI 463
21.4.1 Mac桌面的外观 464
21.4.2 Dock 467
21.4.3 定制Dock 468
21.4.4 安装UNIX应用程序的Fink包管理器 470
21.4.5 System Preference的修改与终端检查器 472
21.4.6 Finder Preferences 474
21.4.7 使用OS X Finder搜索整个文件系统 474
21.5 Web资源 477
小结 478
习题 478
附录 命令字典 481
术语表 554
索引 570
猜您喜欢