第一章 初學UNIX
1.1 起步
1.1.1 有關終端和擊鍵的一些預備知識
1.1.2 與UNIX會話
1.1.3 登錄
1.1.4 鍵入命令
1.1.5 異常的終端行為
1.1.6 鍵入錯誤
1.1.7 繼續(xù)鍵入
1.1.8 中止程序
1.1.9 注銷
1.1.10 郵件
1.1.11 用戶間通信
1.1.12 新聞
1.1.13 手冊
1.1.14 計算機輔助教學
1.1.15 游戲
1.2 文件和常用命令
1.2.1 創(chuàng)建文件
1.2.2 列出文件
1.2.3 打印文件
1.2.4 移動、復制和刪除文件
1.2.5 文件名
1.2.6 有用的命令
1.2.7 文件系統(tǒng)命令小結
1.3 目錄
1.4 Shell
1.4.1 文件名簡寫
1.4.2 I/O重定向
1.4.3 管道
1.4.4 進程
1.4.5 剪裁環(huán)境
1.5UNIX系統(tǒng)的其余部分
第二章 文件系統(tǒng)
2.1 文件系統(tǒng)的基礎
2.2 文件結構
2.3 目錄和文件名
2.4 權限
2.5 I節(jié)點
2.6 目錄層次
2.7 設備
第三章 shell的使用
3.1 命令行結構
3.2 無字符
3.3 創(chuàng)建新命令
3.4 命令參數
3.5 程序輸入作為參數
3.6 Shell變量
3.7 進一步討論I/O重定向
3.8 shell程序里的循環(huán)
3.9 bundle合并
3.10 為什么說shell是可編程的
第四章 過濾程序
4.1 grep系列
4.2 其他過濾程序
4.3 流編輯程序sed
4.4 模式掃描處理品處理語言awk
4.4.1 字段
4.4.2 打印
4.4.3 模式
4.4.4 BEGIN與END模式
4.4.5 算術運算與變量
4.4.6 控制流
4.4.7 數組
4.4.8 關聯(lián)數組
4.4.9 字符串
4.4.10 與shell的交互作用
4.4.11 基于awk的日歷服務
4.4.12 附注
4.5 好的文件與過濾程序
第五章 shell編程
5.1 定制cal命令
5.2 which命令
5.3 while和until循環(huán)
5.4 trap:捕獲中斷
5.5 overwrite:改寫文件
5.6 zap:命令名字終止進程
5.7 pick命令:空格和參數
5.8 news命令:社團服務信息
5.9 get和put:假定蹤文件變動
5.10 小結
第六章 使用標準I/O編程
6.1 vis:標準I/O
6.2 vis第2版:程序參數
6.3 vis第3版:訪問文件
6.4 P:一次顯示一屏
6.5 pick
6.6 錯誤與調試
6.7 zap
6.8 idiff:交互式文件比較程序
6.9 獲取環(huán)境變量
第七章 UNIX系統(tǒng)調用
7.1 低級I/O
7.1.1 文件描述符
7.1.2 文件I/O
7.1.3 創(chuàng)建文件
7.1.4 錯誤處理
7.1.5 隨機訪問
7.2 文件系統(tǒng):目錄
7.3 文件系統(tǒng):I節(jié)點
7.4 進程
7.4.1 創(chuàng)建低級進程
7.4.2 控制進程
7.5 信號和中斷
第八章 程序開發(fā)
8.1 第一階段:四功能計算器
8.1.1 語法
8.1.2 yacc概述
8.1.3 第一階段的程序
8.1.4 在程序中增加單目減
8.1.5 關于make
8.2 第二階段:變量和錯誤恢復
8.3 第三階段:任意變量名和內部函數
8.3.1 再談make
8.3.2 關于lex
8.4 第四階段:編譯成機器
8.5 第五階段:控制流和關系運算符
8.6 第六階段:函數、過程和I/O
8.7 性能評價
8.8 小結
第九章 文檔處理
9.1 宏程序包ms
9.1.1 陣列文本
9.1.2 改變字體
9.1.3 其他命令
9.1.4 宏程序包mm
9.2 troff
9.2.1 字符
9.2.2 改變字體和尺寸
9.2.3 基本troff命令
9.2.4 定義宏
9.3 tbl和eqn預感處理程序
9.3.1 表格
9.3.2 數學表達式
9.3.3 輸出
9.4 排
9.5
第十章
附錄A
附錄B
附錄C