UNIX是一類功能強大的主流操作系統(tǒng)。本書從初學者的角度介紹了UNIX的系統(tǒng)概念及其命令的使用。闡述的內容都是針對初學者完成日常工作所必需的各個方面,涉及UNIX系統(tǒng)的常用命令、UNIX文件系統(tǒng)、vi編輯器和Emacs編輯器、UNIX通信工具、shell命令和程序開發(fā),以及一些更為深入的UNIX命令。書中還介紹了Linux操作系統(tǒng)以及Bourne Again Shell命令等。本書幫助讀者由淺入深、循序漸進地學習UNIX,形成清晰的概念,并且避免了直接羅列復雜的命令格式。
本書從初學者學習UNIX系統(tǒng)概念和使用命令的角度對內容加以組織,使讀者可以由簡入繁、逐步遞進地學習并掌握UNIX的基本概念和使用方法,形成清晰的概念體系。每章最后均有習題,大多數章后附有上機練習,以使讀者鞏固所學知識。閱讀本書,會有助于讀者獨立使用UNIX完成絕大多數日常、例行的工作,并為深入了解UNIX系統(tǒng)打下堅實的基礎。
譯者序
UNIX是當今世界上廣泛使用的主流操作系統(tǒng),具有安全可靠、功能強大,開放性、可移植性好,以及對網絡良好支持等優(yōu)點,普遍用于微機、小型機、大型機乃至巨型機。隨著UNIX的普及,學習和使用UNIX的需求越來越高:本書是一本由淺人深介紹UNIX基本概念和使用方法的優(yōu)秀教材。.
作者從初學者學習UNIX系統(tǒng)概念和使用命令的角度對內容加以組織,涵蓋了初學者完成日常工作所必需的各個方面。在介紹了UNIX系統(tǒng)的背景和基本特征之后,書中從易到難地講解了UNIX系統(tǒng)的常用命令、vi編輯器和Emacs編輯器、文件操作、shell命令解釋器、UNIX通信工具,程序開發(fā)工具,以及一些更為深入的UNIX命令。
Amir Afzal在大學長期從事UNIX系統(tǒng)的教學工作,本書是作者多年教學經驗的總結,具有如下特點:
1.本書是按教材形式編寫的,其中的章節(jié)安排和實例都是作者在其UNIX課程中所使用的。各章的組織架構基本相同,首先是內容概要,然后通過具體實例講解基本概念和命令的使用方法。從而使讀者在學習本書的同時便于上機實踐,得以加深對所學內容的理解。每章最后均有習題,大多數章后附有上機練習,以使讀者鞏固所學知識。合理的組織使讀者可由簡人繁、逐步遞進地學習并掌握UNIX的基本概念和使用方法,形成清晰的概念體系。..
2.本書是針對初學者學習UNIX系統(tǒng)的基本概念和命令而寫的,重點放在初學者常用的基本命令,文件操作及shell編程,省略了很少使用的命令和選項,并且避免了直接羅列所有的命令及其繁雜的選項。這種做法有利于讀者快速掌握UNIX的基本概念和命令,并增強讀者進一步學習UNIX高級課程的信心和興趣。
3.從本書的第四版開始,包含Linux操作系統(tǒng)的命令及其BourneAgainShell(bash)的內容,并指出學習Linux是學習UNIX最方便、最低價的方式。因此,本書的學習也使讀者能學習和了解Linux及其使用。
4.本書的第五版在vi編輯器的基礎上增加了Emacs編輯器,為編輯器提供了另一種選擇,也給更喜歡Emacs編輯器的讀者提供了方便。讀者可學習這兩者中的任何一種,也可同時學習兩種、
本書適合作為大專院校相關專業(yè)UNIX課程的教學用書或參考書,以及各種UNIX培訓班的教材。對于那些在工作中使用UNIX系統(tǒng)的用戶以及進行UNIX開發(fā)和編程的人員,也是很好的初級教程和入門性參考讀物。本書完全可滿足廣大讀者學習UNIX使用的需求。
本書由武漢大學汁算機學院李石君教授組織翻譯。翻譯工作如下:李石君(前言、第1-10章、附錄A、B、D、E、F);曾平(第11-14章、附錄C)。鄭鵬、郭遠麗、肖芬、張乃州、田建偉、余偉等人參與了翻譯工作,進行了部分書稿的初譯和譯文整理、程序驗證等工作,在此一并表示感謝。盡管譯者在翻譯的過程中盡了最大努力,但限于譯者水平,譯文中難免有疏漏和錯誤。歡迎讀者批評指正,并將更正反饋給我們。
前言
UNIX操作系統(tǒng)價格的下降和近期硬件性能的提高推動了UNIX和Linux系統(tǒng)的流行和普及。因此,許多有計算機技能但沒有UNIX操作系統(tǒng)經驗的學生和新用戶都需要學習UNIX。本書正是為這些學生和新用戶而寫的。.
書中并不介紹操作系統(tǒng)原理,也不是UNIX參考書,而是按教學方式組織的教材。其目的在于提供一個在課堂和實驗室環(huán)境下教與學的工具。本書是一本引導讀者的入門書,但本書并不簡單。本書覆蓋了UNIX用戶獨立完成大部分日常工作所必需的內容,也為讀者進一步學習更高深的課程打下了良好的知識基礎,使他們使用UNIX參考書時得心應手。
本書主要依據作者從事UNIX教學的經驗編寫,其中的章節(jié)安排和實例都是作者在講授UNIX課程時使用的。
本書的每一章都較短,需要更多討論的內容被分成兩章,每章的格式盡量保持一致。但當這種格式不宜表述內容時,則加以改換。每一章都從簡要說明概念和主題開始,通過簡單具體的實例闡明概念或者說明命令的用法。隨后是更詳細、更復雜的命令和實例。每章的最后則是用于復習的習題,并在適當或必要的章節(jié)中安排了上機練習。
第1章:緒論
本章簡要介紹計算機硬件和軟件的功能,解釋計算機的基本概念和術語。詳細討論軟件的類型并將重點放在系統(tǒng)軟件上,解釋操作系統(tǒng)的重要性并探討其基本功能。
第2章:UNIX操作系統(tǒng)
本章探討UNIX的發(fā)展歷史,討論主要的UNIX版本,說明UNIX系統(tǒng)的一些重要特征。
第3章:UNIX入門
本章介紹怎樣登錄和退出UNIX系統(tǒng)。介紹修改密碼、輸出系統(tǒng)的時間或日期這些簡單的UNIX命令及其應用,討論UNIX的登錄過程和UNIX的一些內部操作。
第4章:vi編輯器入門
第4章和第6章介紹UNIX操作系統(tǒng)的vi文本編輯器。第4章在簡要討論編輯器之后,引入UNIX系統(tǒng)支持的vi文本編輯器,討論完成簡單的編輯任務所必需的vi基本命令。第6章通過一些高級vi命令展示vi編輯器的更多編輯功能及其靈活性,并解釋定制vi編輯器的各種方法。
第5章:UNIX文件系統(tǒng)介紹
本章是討論UNIX文件系統(tǒng)和相關命令兩章中的第1章。具體討論文件和目錄的基本概念以及文件系統(tǒng)的層次樹結構,給出文件系統(tǒng)操作的命令。這些命令為第6章將要介紹的編輯器中一些命令的使用打下了基礎。
第6章:vi輯器的高級用法
本章介紹高級vi命令,并解釋定制vi編輯環(huán)境和在vi編輯器中利用緩沖機制,同時打開多個文件進行編輯并執(zhí)行UNIX命令的方式。
第7章:Emacs編輯器
Emacs編輯器可以替代vi編輯器。由于很多UNIX版本都支持并提供vi文本編輯器,因而vi編輯器的使用很重要。但很多UNIX用戶更青睞Emacs編輯器。如果系統(tǒng)上沒有Emacs編輯器,安裝一個Emacs也很容易。本章的目的在于為文本編輯器提供另一種選擇。
本章介紹Emacs編輯器。先解釋基本概念和命令,然后介紹UNIX用戶日常工作必需的Emacs基本命令。前面的章節(jié)中介紹了幫助功能,以便獲取在此沒提到的命令和選項的解釋信息。..
第8章:UNIX文件系統(tǒng)高級操作
. 本章是討論UNIX文件系統(tǒng)和相關命令的第2章。提供更多的文件操作命令,討論shell的輸入/出重定向操作符,并介紹文件名通配符。
第9章:探索shell
本章介紹shell命令解釋程序及其在UNIX系統(tǒng)中的功能。重點討論shell的特征和功能、shell變量以及shell元字符,還闡明UNIX系統(tǒng)中的啟動文件和進程管理。
第10章:UNIX通信
本章集中討論UNIX通信工具。介紹UNIX系統(tǒng)中的電子郵件程序及其可用的命令和選項,討論影響電子郵件程序環(huán)境的shell變量及其他變量,并說明如何利用啟動文件來定制電子郵件程序。
第11章:程序開發(fā)
本章介紹程序開發(fā)的要點。討論開發(fā)程序的步驟,通過一個簡單的C++語言程序實例,說明從編寫源程序、進行編譯到生成可執(zhí)行程序的全過程。
第12章:shell編程
本章集中討論shell編程。介紹shell作為高級解釋性語言的功能,討論shell編程的構造和細節(jié),演示shell程序的創(chuàng)建、調試和運行。
第13章:shell腳本:編寫應用程序
在前一章所介紹的命令和概念的基礎上,本章討論更多的shell編程命令和技巧。通過一個簡單的應用程序實例,說明用shell語言開發(fā)程序的過程。
第14章:告別UNIX
本章給出了其他一些重要的UNIX命令,主要介紹獨立的命令和主題,這些內容出于種種原因而不適合放在前面章節(jié)。磁盤命令、文件操作命令、遠程計算命令和系統(tǒng)安全是本章的主要論題。
致謝
如果沒有許多學術界和業(yè)界朋友的幫助,本書的第五版是不可能問世的。在此,我逐二向所有為本書得以出版提供幫助的朋友們表示感謝。
感謝參加我教授的C/C++和UNIX課程的同學們提供建議和反饋信息。
感謝我在Strayer大學的同事。
感謝我在General Dynamics的同事。
感謝Tom Swanson,我即將出版的另一本書“UNIX Administration Unbounded”的合作者所慷慨付出的時間。
感謝Prentice Hall出版公司的Charles Stewart對我的寫作給予的耐心和長期支持。
Amir Afzal,在喬治華盛頓大學獲得碩士及博士學位,美國弗吉尼亞州多所大學的教授,負責講授本科生、研究生的計算機和信息技術課程,在設計和開發(fā)實時計算機軟件系統(tǒng)方面積累了大量的實踐經驗。本書是作者多年教學和實踐經驗的總結。
李石君,男,博士,武漢大學計算機學院教授。2003年在加拿大卡萊頓大學計算機系從事Web信息技術合作研究和雙語教學學習。國內外重要刊物上發(fā)表論文50余篇,其中被SCI檢索6篇、EI檢索12篇、ISTP檢索15篇。編著2本,譯著2本。參加國家自然科學基金和國家863等多項科研項目。
第1章 緒論
1.1 引言
1.2 計算機簡介
1.3 計算機硬件
1.4 處理操作
1.5 計算機軟件
習題
第2章 UNIX操作系統(tǒng)
2.1 UNIX操作系統(tǒng):歷史簡介
2.2 其他UNIX系統(tǒng)
2.3 UNIX操作系統(tǒng)概要
2.4 UNIX系統(tǒng)特征
習題
第3章 UNIX入門
3.1 與UNIX建立連接
3.2 使用一些簡單的UNIX命令
3.3 獲取幫助信息
3.4 更正鍵盤輸入錯誤
3.5 使用shell和系統(tǒng)工具
3.6 登錄過程
命令小結
習題
上機練習
第4章 vi編輯器入門
4.1 什么是編輯器
4.2 vi編輯器
4.3 基本的vi編輯器命令
4.4 存儲緩沖區(qū)
命令小結
習題
上機練習
第5章 UNIX文件系統(tǒng)介紹
5.1 磁盤組織
5.2 UNIX中的文件類型
5.3 目錄詳述
5.4 目錄命令
5.5 顯示文件內容
5.6 打印文件內容
5.7 刪除文件
命令小結
習題
上機練習
第6章 vi編輯器的高級用法
6.1 更多有關vi編輯器的知識
6.2 重排文本
6.3 vi操作符的域
6.4 在vi中使用緩沖區(qū)
6.5 光標定位鍵
6.6 定制vi編輯器
6.7 其他的vi命令
命令小結
習題
上機練習
第7章 Emacs編輯器
7.1 引言
7.2 啟動Emacs
7.3 Emacs屏幕
7.4 退出Emacs
7.5 Emacs中的幫助信息
7.6 光標移動鍵
7.7 刪除文本
7.8 重排文本
7.9 大小寫轉換命令
7.10 文件操作
7.11 Emacs緩沖區(qū)
7.12 文件恢復選項
7.13 搜索和替換
7.14 Emacs窗口
7.15 emaes文件
7.16 命令行選項
命令小結
習題
上機練習
第8章 UNIX文件系統(tǒng)高級操作
8.1 讀文件
8.2 shell重定向
8.3 增強的文件打印功能
8.4 文件操作命令
8.5 文件名替換
8.6 其他文件操作命令
8.7 UNIX的內部:文件系統(tǒng)
命令小結
習題
上機練習
第9章 探索shell
9.1 UNIX shell
9.2 shell變量
9.3 其他元字符
9.4 其他UNIX系統(tǒng)工具
9.5 啟動文件
9.6 Korn Shell和Bourne Again Shell
9.7 UNIX進程管理
命令小結
習題
上機練習
第10章 UNIX通信
10.1 通信方式
10.2 電子郵件
10.3 mailx輸入模式
10.4 mailx的命令模式
10.5 定制mailx環(huán)境
10.6 與本地系統(tǒng)外的用戶通信
命令小結
習題
上機練習
第11章 程序開發(fā)
11.1 程序開發(fā)
11.2 編程語言
11.3 編程機制
11.4 一個簡單的C++程序
11.5 UNIX編程跟蹤工具
習題
上機練習
第12章 shell編程
12.1 UNIX shell編程語言簡介
12.2 編寫更多的shell腳本
12.3 探索shell編程基礎
12.4 算術運算
12.5 循環(huán)結構
12.6 調試shell程序
命令小結
習題
上機練習
第13章 shell腳本:編寫應用程序
13.1 編寫應用程序
13.2 UNIX內核:信號
13.3 對終端的進一步討論
13.4 其他命令
13.5 菜單驅動應用程序
命令小結
習題
上機練習
第14章 告別UNIX
14.1 磁盤空間
14.2 其他UNIX命令
14.3 拼寫錯誤更正
14.4 UNIX系統(tǒng)安全
14.5 使用FTP
14.6 使用壓縮文件
14.7 telnet命令
14.8 遠程計算
命令小結
習題
上機練習
附錄A 命令索引
附錄B 分類命令索引
附錄C 命令小結
附錄D vi編輯器命令小結
附錄E Emacs編輯器命令小結
附錄F ASCⅡ表