原文鏈接: http://www.aosabook.org/en/bash.html
作者: Chet Ramey
Unix Shell提供了一個接口,支持用戶通過命令與操作系統(tǒng)進行交互。但shell同時也算得上是一門豐富的編程語言,因為它包含了基本的流程控制結(jié)構(gòu): 替換(alternation),循環(huán),條件判斷,還有基本的數(shù)學(xué)操作,函數(shù)定義,字符串變量,以及與命令之間的雙向通信。
shell可以在終端或終端模擬器(如xterm)中以交互的方式運行,也可以存儲在文件中作為腳本來使用。大部分現(xiàn)代shell環(huán)境(包括Bash)提供命令行編輯功能,用戶可以使用Emacs或Vi風(fēng)格的快捷鍵來編輯命令行,或訪問命令的歷史紀錄。
Bash的處理過程類似于shell的流水線(pipe):首先由終端或腳本讀入數(shù)據(jù),然后使用一系列變換過程依次進行處理,執(zhí)行到最后一個shell命令后返回。
本章將討論Bash的主要組件:輸入處理,解析,單詞展開(word expansion)和其他命令處理,管道(pipeline)中的命令執(zhí)行。這些組件構(gòu)成一個流水線(pipeline),從鍵盤或腳本中獲取字符,然后逐步轉(zhuǎn)化為命令。
更多建議: