基本信息
頁數:361
出版日期:2004-4-1
版次: 1
開本:16開
包裝:精裝
簡介
本書是UnixShell編程方面的經典書籍。第3版以Unix Shell的最新POSIX標準Shell為主線,同時,在必要的情況下,及時指出與其他流行Shell的區別,因此,本書對其他版本Shell的編程也具有重要的
借鑑意義。
本書的特點之一是:雖然是按主題組織介紹。但各主題之間並非彼此獨立。後面的主題經常使用到前面講到過的知識。因此給人以非常深刻的漸進和整體的感覺。
簡易明了的舉例說明
本書最大的特點是舉例說明。書中沒有長篇的概念描述,而是在簡單介紹後舉出適當的例子,簡易明了。例子的後面,經常有一些針對要點的說明,比如,為什麼用某一條命令,輸出結果為什麼是這樣,或者解釋程式的結構或執行順序等,可以幫助讀者加深
理解。
·本書以POSIX標準Shell為講解對象,介紹了用Unix Shell編寫程式所涉及到的方方面面。包括Unix基本命令、Shell編程要用到的主要工具、Shell程式的基本內容以及子Shell編程中的高級特性。
·一個程式有多種實現方法,本書分別採用不同的編程方法實現同一功能,讀者通過研究不斷改進的程式範例,不但可以學到相關的編程技巧,更可以學到編寫Shell程式的
思想和
方法。
·本書譯者
袁科萍老師曾在美國紐約大學作為客座教授,從事計算機科學的教學和研究工作多年,樊慶紅是計算機專業開發人員,有多年從事大型軟體項目的開發和管理經驗。
·本書除了對有一定Unix實踐經驗,並希望進一步提高的人有很大幫助以外;對Unix初學者和打算學習Unix的人而言也是不錯的選擇。
目錄
第1章 概述
第2章 基礎知識快速回顧
2-1 一些基本命令
2-1-1 顯示時間和日期:date命令
2-1-2 查看登錄系統的用戶:who命令
2-1-3 顯示字元:echo命令
2-2 檔案操作
2-2-1 列出檔案清單:ls命令
2-2-2 顯示檔案內容:cat命令
2-2-3 統計檔案中的單詞數:WC命令
2-2-4 命令選項
2-2-5 複製檔案:cp命令
2-2-6 檔案重命名:mv命令
2-2-7 刪除檔案:rm命令
2-3 目錄操作
2-3-1 宿主目錄和路徑名
2-3-2 顯示工作目錄:pwd命令
2-3-3 改變當前工作目錄:cd命令
2-3-4 進一步討論ls命令
2-3-5 創建目錄:mkdir命令
2-3-6 在目錄之間複製檔案
2-3-7 在目錄之間移動檔案
2-3-8 連結檔案:ln命令
2-3-9 刪除目錄:rmdir命令
6-3 反斜槓
6-3-1 用反斜槓續行
6-3-2 雙引號中的反斜槓
6-4 命令替換
6-4-1 反引號
6-4-2 $ … 結構
6-4-3 expr命令
6-5 練習
第7章 參數傳遞
7-1 $#變數
7-2 鏟變數
7-3 在電話簿中查找某個人的程式
7-4 向電話簿中增加某人的程式
7-5 從電話簿中去掉某個人的程式
7-6 $ n
7-7 shift命令
7-8 練習
第8章 判斷
8-1 退出狀態
8-1-1 $ 變數
8-2 test命令
8-2-1 字元串操作符
8-2-2 test的另一種格式
8-2-3 整數操作符
8-2-4 檔案操作符
8-2-5 邏輯非操作符1
8-2-6 邏輯與操作符-a
8-2-7 小括弧
8-2-8 邏輯或操作符-o
8-3 else結構
8-4 exit命令
8-5 elif結構
8-6 case命令
8-6-1 特殊模式匹配字元
8-6-2 調試程式用的-x選項
8-6-3 再回到case
8-7 空命令
8-8 &&和‖結構
8-9 練習
第9章 循環
9-1 for命令
9-1-1 $@變數
9-1-2 不帶列表的for命令
9-2 while命令
9-3 until命令
9-4 進一步討論循環
9-4-1 中斷循環
9-4-2 跳過循環中的後續命令
9-4-3 在後台執行循環
9-4-4 循環中的輸入/輸出重定向
9-4-5 通過管道向循環輸入數據或接受循環的輸出數據
9-4-6 在單行中鍵入循環命令
9-5 Getopts命令
9-6 練習
第10章 數據的讀入和顯示
10-1 read命令
10-1-1 複製檔案的程式
10-1-2 echo中的特殊轉義符
10-1-3 mycp的改進版本
10-1-4 mycp的最終版本
10-1-5 選單驅動的電話簿程式
10-1-6 $$變數和臨時檔案
10-1-7 read的退出狀態
10-2 printf命令
10-3 練習
第11章 環境
11-1 局部變數
11-2 導出變數
11-3 PS1和PS2
11-4 HOME, James
11-5 PATH
11-6 當前目錄
11-7 再談子shell
11-7-1 命令
11-7-2 exec命令
11-7-3
… 和 …, 結構
11-7-4 給子shell傳遞變數的另一種方法
11-8 . profile檔案
11-9 TERM變數
11-10 TZ變數
11-11 練習
第12章 深入參數
12-1 參數替換
12-1-1 $ Farameter
12-1-2 S parameter:-value
12-1-3 S parameter:=value
12-1-4 S parameter: value
12-1-5 S parameter: value
12-2 模式匹配結構
12-3 $0變數
12-4 set命令
12-4-1 -x選項
12-4-2 沒有參數的set命令
12-4-3 用set命令重新設定位置參數
12-4-4 -選項
12-4-5 set的其他選項
12-5 IFS變數
12-6 readonly命令
12-7 unset命令
12-8 練習
第13章 雜項
13-1 eval命令
13-2 wait命令
13-3 trap命令
13-3-1 無參數trap
13-3-2 忽略信號
13-3-3 復位陷阱
13-4 深入I/0
13-4-1 <&-和>&-
13-4-2 內聯輸入重定向
13-4-3 shell檔案檔案
13-5 函式
13-5-1 去除函式定義
13-5-2 retum命令
13-6 type命令
13-7 練習
第14章 再談Rolo程式
14-1 設計思想
14-1-1 rolo
14-1-2 add
14-1-3 lu
14-1-4 display
14-1-5 rem
14-1-6 change
14-1-7 listall
14-2 示例輸出
14-3 練習
第15章 shell的互動和非標準特性
15-1 得到合適的shell
15-2 ENV檔案
15-3 命令行編輯
15-4 命令歷史記錄
15-5 Vi行編輯模式
15-6 emacs行編輯模式
15-7 訪問歷史記錄的其他方式
15-7-1 history命令
15-7-2 fc命令
15-7-3 r命令
15-8 函式
15-8-1 局部變數
15-8-2 自動裝載函式
15-9 整數算術操作
15-9-1 整型類型
15-9-2 不同進制的數字
15-10 alias命令
15-11 數組
15-12 作業控制
15-13 受限shellrsh
15-14 其他雜項特性
15-14-1 cd命令的其他特性
15-14-2 代字元替換
15-14-3 搜尋順序
15-15 兼容性總結
15-16 練習
附錄A shell總結
A-1 啟動
A-2 命令
A-3 注釋
A-4 參數和變數
A-4-1 shell變數
A-4-2 位置參數
A-4-3 特殊參數
A-4-4 參數替換
A-5 命令重返
A-5-1 fc命令
A-5-2 vi行編輯模式
A-6 引用
A-6-1 代字元替換
A-6-2 算術表達式
A-7 檔案名稱替換
A-8 輸入/輸出重定向
A-9 導出變數和子shell執行
A-9-1
… 結構
A-9-2
…, 結構
A-9-3 深入shell變數
A-10 函式
A-11 作業控制
A-11-1 shell作業
A-11-2 停止作業
A-12 命令總結
A-12-1 :命令
A-12-2 . 命令
A-12-3 alias命令
A-12-4 bg命令
A-12-5 break命令
A-12-6 case命令
A-12-7 cd命令
A-12-8 continue命令
A-12-9 echo命令
A-12-10 eval命令
A-12-11 exec命令
A-12-12 exit命令
A-12-13 export命令
A-12-14 false命令
A-12-15 fc命令
A-12-16 f2命令
A-12-17 for命令
A-12-18 getopts命令
A-12-19 hash命令
A-12-20 if命令
A-12-21 iobs命令
A-12-22 kill命令
A-12-23 newgrp命令
A-12-24 pwd命令
A-12-25 read命令
A-12-26 readonly命令
A-12-27 return命令
A-12-28 set命令
A-12-29 shift命令
A-12-30 test命令
A-12-31 times命令
A-12-32 trap命令
A-12-33 true命令
A-12-34 type命令
A-12-35 umask命令
A-12-36 unalias命令
A-12-37 unset命令
A-12-38 until命令
A-12-39 wait命令
A-12-40 while命令
附錄B 補充信息
B-1 在線上文檔
B-2 Web上的文檔
B-3 書籍
B-3-1 O''Reillv&Associates
B-3-2 Sams and Que
B-3-3 其他出版物