shell腳本中的語法有些地方與經常使用的java、c等語言有很大不一樣。java
變量:shell
在對變量賦值的時候=左右兩邊不能有空格。賦值的時候不須要使用$,而在訪問變量的值的時候須要使用$。與PHP語言有點不同,PHP賦值的時候能夠加$.數組
條件判斷:spa
條件判斷中[]或[[]]中的判斷表達式與方括號要用空格隔開,可能會使用的地方如if,while中。變量
[]:可用布爾運算! 、-a、 -o 不能使用邏輯運算符語法
[[]]:能夠使用邏輯運算&& 、|| 不能使用布爾運算符腳本
在網上有人建議儘可能使用[[]]判斷結構,理由是能夠避免邏輯判斷錯誤,&&、||、< 和 > 操做符可以正常存在於 [[ ]] 條件判斷結構中,可是若是出如今 [ ] 結構中的話,會報錯。語言
數組:while
不像其餘語言,沒有多維數組,只有一維數組,也不能有數組嵌套,若是用數組做爲數組元素,只將數組的第一個元素做爲外面數組元素。co