当前: 首页 - 图书专区 - UNIX教程(第2版)
UNIX教程(第2版)


  在线购买
Syed Mansoor Sarwar, Robert Koretsky, Syed Aqeel Sarwar
7-111-18602-8
69.00
592
2006年05月12日
张玉洁 孟祥武
计算机 > 操作系统 > UNIX
Addison-Wesley
3818
简体中文
16开
Unix:The Textbook (Second Edition)
教材
计算机科学丛书







本书是一本优秀的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。
日趋成熟的主题
  自从本书的第1版发行以来,商业界、科学界和工程计算领域引入的东西很少,而计算机科学中也很少引入预先显著期望或突出的技术,或许这就是这些学科近期发展程度的标志。尽管如此,这些学科仍然在“开放源码” 和所有权阵营之间存在众所周知的隔离。但是已确立的不管是否合法的势力支配着计算行业的继续发展, 并且对当前国际市场信息的分配、消费和同化有着难以置信的影响力。与这种发展相对应的是,UNIX 和它的复制品几乎全球化地控制了信息的服务,而且从所有的迹象看,这种局面在近期也不会改变。

第2版的变化
  自从第1版问世以来,UNIX对应用程序用户界面增加了一些重要的功能,并且UNIX较其以前成为市场中更为广泛应用的系统,因此我们认为有必要介绍这些新增的内容,它们包括如下:
  * 在更广泛的范围内来阐述UNIX的实现,而不仅仅说明系统存在的变化。
  * 关于XFree86 KDE GUI的完整指南。
  * 描述使用Aqua GUI的Mac UNIX。
  * 第0章的“UNIX操作系统快速入门”,可使新手获得操作经验。
  * 许多新的图表、表格、交互式shell会话、章节指南、章节练习,以及章末习题。
  * 扩大了关于网络一章的覆盖范围,增加了一些有关RFC的内容,修订了域名层次的覆盖范围,以及描述了制定因特网标准和发展计划的各种组织。
  * 介绍了一些新的命令,如ssh、scp、sftp、host、dig,并且对一些原有的命令(如telnet和finger)扩大了覆盖范围。
  * 给出了一些关于UNIX历史、各种命令,以及编程工具的重要Web资源URL。
  * 补充资料,包括附加习题集的在线实验手册,以及关于每一章的试题库。
  * 重新设计了内容的布局,为程序员提供更实用的参考。
  当看到这些新增的部分,以及书中所有内容的编排顺序和表达方式时,要切记我们有着近40年的大学教学实践经验。在教授UNIX这门课时,我们既不愿使用庞大的难以驾驭的UNIX参考材料,也不愿使用指南类的精简手册。因为这些都不能满足富有意义、完整、相对入门性质地讲授UNIX主题这一要求。我们一直强烈认为,通过教科书的方式,将章节内容与练习结合,并配之以一些实用的章末习题,可以将UNIX中所有重要的主题以“课堂讲座-实验-家庭作业”的形式体现出来。仔细修改后的本书第2版,保持了达到最佳学习效果的一贯风格(即,精心设计的新旧主题顺序、及时完整的课程、在线的实验习题,以及与书中章节同步的家庭作业练习或习题)。与第1版一样,本书这些主题所涉及的深度使得任何有志于将其作为专业研究方向的人士都会发现这本书相当实用。

第2版的目的
  本书的首要目的仍是通过描述UNIX的应用程序用户接口(AUI),使读者可以深入了解系统的内部工作机制,同时还解释了一些重要的UNIX概念、数据结构、算法。本版深入阐述系统内部工作机制的重点是UNIX文件、进程和输入输出重定向的概念。本书的第二个目的是描述一些对于开发者十分重要的C/C++软件和shell脚本的UNIX软件工程工具。与第1版一样,本书没有按照C/C++语言库和UNIX系统调用的方式来介绍UNIX应用程序的程序员接口(API)。在编写第2版时,假定读者预先没有UNIX以及编程方面的知识。

表达格式
  书中每章节的讲解结构遵循下面两种类似的格式之一:shell 会话格式,或指南格式。shell 会话格式包括以下内容(除了第5、6、21章外都是以这种格式):
1. 主题(学习目标)
2. 导言
3. 节和小节中的主题讨论与背景
4. 以实际的shell 会话形式介绍示例命令或主题说明,并在其中显示用户输入的命令以及执行结果
5. 用于加深主题讨论的,或在shell 会话中交互操作的章节练习
6. 小结
7. 与主题相关的章末习题
指南格式包含以下内容(用于第5、6、21章):
1. 主题(学习目标)
2. 导言
3. 节和小节中的主题讨论与背景
4. 在某些特殊的节或小节中,以一个示例会话和若干个实践会话指南来解释相关的命令和主题
5. 以shell 会话形式介绍示例命令或主题说明,并在其中显示用户输入的命令以及执行结果
6. 用于加深主题讨论的,或在shell会话中交互操作的章节练习
7. 小结
8. 与主题相关的章末习题
  本版新增了图表和表格,并且加入了许多章节指南、交互shell会话、章节练习和章末习题。此外,增加了许多新的命令和实用程序,因此就出现了更多的语法框。语法框准确描述了命令的用法(以及基本语法的其他任何相应的变化)、作用、产生的输出结果,以及命令中的一些实用的选项和特征。此外,每章都包含有小结,用于概括这一章所涉及的内容。

如何讲授本书
  如果本书是作为UNIX概论性课程的主要课本,那么所有的章节都应该讲到(第20章可以除外)。如果是将本书与其他书一起作为操作系统概念和原理课程的主要课本,那么讲授的内容就应该根据课程有关的主题来决定,应该包含第7章、第12章和第13章。如果本书是用于C/C++语言或shell编程的课程中,那么第0章、第7~20章以及第3~6章中的相关部分将会对学生有很大的帮助。至于第20章,讲授内容的多少取决于课程本身,在概论性的课程中可以只讲一部分,高级课程中可以全讲。

排版约定
  本书中使用下面的字体,来表示不同的内容类型。
字   体 内 容 类 型
黑体  关键字
Boldface Monospace(粗体等宽字体)  任何使用键盘输入的字符或字符串(命令、shell变量、用户输入等)(本版译文中采用Courier New字体)
Monospace(等宽字体)  命令、工具、应用程序,及其选项(本版译文中采用Courier New字体)
Italic(斜体)  需要强调的内容(本版译文中采用楷体)
Roman (罗马字体)  其他,包括文件路径名(本版译文中英文采用Times New Roman字体,中文采用宋体)
键盘键放入尖括号内,如<Enter>和<Ctrl-D>。“按下<Ctrl-D>”表示保持<Ctrl>键为按下状态的同时按下<D>键。它也可表示为<^D>。

补充资料
  可以获得与本书配套的各种补充资料。
所有读者可以获得的资料
  要获得这些资料,访问网站http://www.aw.com/cssupport。
  * 在线实验练习  用于在实验环境2~3小时操作,包括各种面向按键的、结构化的,并可以自由回答的问题
  * 章节练习的解答
  * 有关C程序和长shell脚本的源代码
  * 网络上其他UNIX资料的链接
  仅教师可以获得的资料
  请联系Addison-Wesley的代表,或者向aw.cse@aw.com发送电子邮件,询问获取这些资源的信息。
  * 试题库
  * 幻灯片
  * 章末习题的解答
  * 在线实验练习问题的解答手册
  我们将对本书中所有的错误负责。读者可以向msarwar@lums.edu.pk和bobk@egr.up.edu(或者koretsky@up.edu)发送错误报告以及建议。我们将在随后的版本中接受这些反馈意见并纠正错误。

感谢
  我们是从2003年夏开始编写本书第2版的,并于2004年初夏完成。如果没有许多参与者的帮助,要完成如此大的修订是不可能的。首先,我真诚地感谢本书的编辑Michael Hirsch,感谢他在这个项目中所提供的支持、指导、信任,以及职业水准和见解。他是最棒的。同样感谢AWL 的Marilyn Lloyd,她在本书制作阶段给出了一些极好的建议并做了杰出的工作。我们也要感谢Joyce Wells为本书设计了精美的封面。还要感谢AWL的Katherine Harutunian提供了许多有价值的建议和帮助。整个Addison Wesley团队的工作是相当出色的!特别感谢Dartmouth Publishing 的Keith Henry、Misty Horten以及Alisa Andreola,他们做出了杰出的项目管理和内部规划,感谢Lydia Horton一流的审稿工作。
  我们向下述评论者表示真诚的谢意,他们给出了有价值的反馈,以及大量准确而深刻的评论。我们要特别感谢Robert Albright教授,他仔细阅读原稿并给出了许多实用的建议,这些建议大大提高了最终版本的质量。
* Robert Albright 特拉华大学
* Hussein Abdel-Wahab 老Dominion大学
* Dunren Che 南伊利诺伊大学
* C. Michael Costanzo 加利福尼亚大学圣芭芭拉分校
* Robert M. Cubert 佛罗里达大学
* James P. Durbano 特拉华大学
* Nisar Hundewale 佐治亚州立大学
* Mark Hutchenreuther 加州工艺州立大学
* Stephen P. Leach 佛罗里达州立大学
* Susan Lincke-Salecker 威斯康星-帕克塞德大学
* Mike Qualls Grossmont社区学院
* Daniel Tomasevich 旧金山州立大学
* Paul Tymann 罗切斯特理工学院
* Troy Vasiga 滑铁卢大学
  我们还要感谢Ronald E. Bass、Thomas A. Burns、Chuck Lesko、Toshimi Minoura、Selmer Moen、Gregory B. Newby、Dr. Marianne Vakalis,以及Dr. G. Jan Wilms,他们对本书第1版提出了有深刻见解的评论。
  感谢波特兰大学工程计算机网络学院(UPSECN)的高级系统管理员Kent Thompson,他爽快地提供了第21章中的.Xdefaults文件。也感谢UPSECN 的计算机操作员Sheila Smith 在各方面的支持。

个人致谢
  Syed Mansoor Sarwar 感谢我的父母、孩子、妻子及兄弟姐妹。谢谢他们对我的爱、支持与信任,他们在生活中给予了我积极的影响和多方面的帮助。在编写本书期间,我的儿子Hassaan和女儿Maham给予了我特别的宽容和支持。感谢你们的理解,孩子们!“snug bug”Ibraheem爱好学习,喜欢看图画书,带给了我很多快乐。Ibraheem,gidha kidhr hai?Truck aina wadda aiy。特别感谢我的弟弟Nadeem和妹妹Farhana和Rizwana,谢谢他们对我的不断鼓励。Buggie,hun bichian paindian nay?
  感谢Lahore管理科学大学(LUMS)给予我鼓励和帮助的同事:Haroon Babri、Mohammad Ali Maud、Syed Zahoor Hassan、Anwar Khurshid、Aamer Mahmood、Sohaib Khan、Shahid Masud、Tariq Jadoon、Salim Tariq、Zartash Uzmi、Asim Loan、Wasif Khan、Jamshed Khan、Mohammad Ali Khan(MAK)和Nuzhat Kamran。我也要感谢波特兰大学、波特兰社区学院和LUMS的许多学生,他们在我编写本书的素材方面给予了帮助。尤其感谢我的学生Sana Naveed Khawaja和Qudsia Khan,他们帮我准备了幻灯片。感谢Mohammad Zia-ur-Rahman,他指出了第1版打印稿中的一些错误,并帮我做了试题库。
  向我的老师们表示诚挚的谢意,本书献给他们,感谢他们对职业的投入并激发我从事教育事业。这些给予我极大启示的老师是: Haq夫人、Mir女士、Farooqi夫人、Hashim夫人(小学);Aslam Nasir、Chishty Sahib、Sabir Sahib,以及Akram Akhtar(初中和高中老师);R. A. Khan、Mohammad Ishaq和Ghulam us Saqlain Naqvi(大学教授);以及Shahid Bokhari、Ashraf Iqbal、Noor Sheikh、Sufi Rasheed、Hafiz Mohammad Saeed、Mohammad Ali Maud、Norman Scott、Janice Jenkins、Art Pohm、James Davis、Arthur Oldehoeft、Thomas Piatkowski、Douglas Jacobson、James “Jolly”Triska、Charlie Wright以及David Schmidt(UET Lahore、Ann Arbor的密歇根大学以及Iowa 州立大学的教授)。Shahid Bokhari、Art Pohm、James Davis、Arthur Oldehoeft,以及 David Schmidt使我加深了对计算机的兴趣,特别是操作系统和编程语言。Art Pohm和Jim Davis的出色榜样,教会了我如何建议和指导我的学生。Ashraf Iqbal的教学艺术给我留下深刻的印象。还有,Mohammad Ali Maud教会我对学生的许诺意味着什么。
  我还要感谢我的合作者,Bob Koretsky和Aqeel Sarwar,感谢他们的帮助、鼓励和信任。Bob,没有你,我真不知道怎样完成这本书!
  Robert M. Koretsky 感谢我的妻子Kathe、女儿Tara和儿子Cody,感谢他们在此项工作期间对我的爱和支持。我也要感谢Mansoor Sarwar给予我的灵感和友谊。
  Syed Aqeel Sarwar 感谢我的父母所做出的个人牺牲、支持和永恒的爱。我也要感谢我的兄长Syed Mansoor Sarwar,感谢他不断地鼓励和指导。
第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
UNIX是当今最具生命力的主流操作系统之一,广泛地应用于全球各种企业和各种服务器上。随着Internet技术的发展和深入人心,越来越多的人需要学习如何使用UNIX。
  本书是《UNIX: the textbook》第2版的中译本,作者以精心设计的内容、合理的组织结构,深入浅出地剖析了UNIX操作系统的各个方面。尤其对UNIX的基本概念、相关术语及其基本使用,给出了全面、细致且完整的讲述。
  本书主要是为UNIX初学者准备的,对于新手而言,这是一本难得的好书。当然,已经具有相当开发经验的专业人士,相信也可以从中找到需要的信息。
  在翻译过程中我们力图做到术语准确、语句流畅、忠实原作,并尽力修正了一些原书中的小错误,对于关键术语,尤其是较新的术语,尽量使用了业界广泛接受的中文表达方法,力求能被大部分读者接受。与此同时,我们还在这些术语的后面标注了英文,以免由于自己的翻译不当,而给读者带来疑惑。
  尽管我们在翻译过程中已经尽了最大的努力,但由于时间仓促和自身能力有限,理解不当和翻译不妥,甚至错误之处仍然在所难免,恳请读者不吝指正。


张玉洁  孟祥武
北京邮电大学计算机科学与技术学院
2006年1月
读者书评
发表评论



高级搜索
AIX UNIX系统管理、维护与高可用集群建设
UNIX操作系统教程 第3版
UNIX操作系统设计(英文版)


版权所有© 2008 北京华章图文信息有限公司 京ICP备08102525号 京公网安备110102004606号
通信地址:北京市百万庄南街1号 邮编:100037
电话:(010)68318309, 88378998 传真:(010)68311602, 68995260