1. 如果要兩個命令一起運行,可在同一提示行輸入它們,用分號分隔開。
2. 在創建shell腳本文件時,必須在文件的第一行指定要使用的shell。
3. 在通常的shell腳本的行裡,井號(#)用作注釋行。shell腳本中注釋行是不被shell執行的。然而,shell腳本文件的第一行是個特例,井號後接嘆號告訴shell用哪個shell來運行腳本。
4. 有些Linux發行版將$HOME/bin目錄添加進了PATH環境變量。它在每個用戶的HOME目錄下提供了提供了一個存放腳本文件的地方,shell可以在那裡查找要執行的命令。
5. echo命令能顯示一個簡單的文本字符串。
6. 如果想在同一行顯示一個文本字符串作為命令輸出,可以用echo 語句的-n參數。
7. 反斜線允許shell腳本將美元符解釋成為實際的美元符,而不是變量。
8. 你可能還見過通過${variable}形式引用的變量。變量名兩側額外的花括號通常用來幫助識別美元符後的變量名。
9. 用戶變量可以是任何不超過20個字母、數字或下劃線的文本字符串。用戶變量區分大小寫。
10.值通過等號賦給用戶變量。變量、等號和值之間不能出現空格。
11.shell腳本會自動決定變量值的數據類型。
12.反引號允許將shell命令的輸出賦給變量。
13.bash shell採用大於號(>)來完成重定向功能。
你可能想要將命令的輸出追加到已有文件上,你可以用雙大於號(>>)來追加數據。
14.輸入重定向符號是小於號(<)。
記住它的簡易辦法是在命令行上,命令總是在右側,而重定向符號「指向」數據流動的方向。小於號說明數據正在從輸入文件流向命令。
15.內聯輸入重定向符號是雙小於號(<<)。除了這個符號,還必須指定一個文本標記來劃分要輸入數據的開始和結尾。你可以用任何字符串的值來作為文本標記,但在數據的開始和結尾必須一致。
在命令行上使用內聯輸入重定向時,shell會用PS2環境變量中定義的次提示符來提示輸入數據。
16.取代將命令的輸出重定向到文件,你可以重定向輸出到另一個命令。這個過程稱為管道連接。
管道的符號由兩個豎線構成,一個在另一個上面。在美式鍵盤上,它通常和反斜線(\)位於同一個鍵。
17.可以在一條命令中使用任意多條管道。
管道最流行的用法之一是將命令產生的長輸出結果通過管道傳送給more命令。
18.sort命令將包名按字母順序排列。
19.expr命令允許在命令行上處理數學表達式。
20.在bash中,在將一個數學運算結果賦給某個變量時,可以用美元符合方括號($[operation])將數學表達式圈起來。
21.bash shell數學運算符只支持整數運算。
22.bash計算器允許在命令行輸入浮點表達式、解釋表達式、計算並返回結果的一種程式語言。
bash計算器能夠識別:
(1) 數字(整數和浮點數);
(2) 變量(簡單變量和數組);
(3) 注釋(以井號開始的行或C語言中的/* */對);
(4) 表達式;
(5) 編程語句(例如if-then語句);
(6) 函數。
浮點運算是由一個內建的稱為scale的變量控制的。必須經這個值設置為結果裡你想要的小數後的位數,否則得不到你想要的結果。
23.在腳本中使用bc基本格式是這樣的:
variable=`echo 「options; expression」 | bc`
第一部分options允許你來設置變量。如果需要設置不止一個變量,可以用分號來分開它們。experssion參數定義了通過bc執行的數學表達式。
24.shell中運行的每個命令都使用退出狀態碼來告訴shell它完成了處理。退出狀態碼是一個0到255之間的整數值,在命令結束運行時由命令傳給shell。
一個成功結束的命令的退出狀態碼是0。如果一個命令結束時有錯誤,退出狀態碼中就會有一個正整值。
Linux退出狀態碼:
25.exit命令允許你在腳本結束時指定一個退出狀態碼。