轉載:https://www.cnblogs.com/bovenson/p/4548079.htmlhtml
關於shell的一些注意點,粘貼自拉鉤教育精選評論:測試開發核心技術 46 講——>第6講shell
一、[ ]表示條件測試。注意這裏的空格很重要。要注意在'['後面和']'前面都必需要有空格測試
二、在shell中,then和fi是分開的語句。若是要在同一行裏面輸入,則須要用分號將他們隔開。htm
三、注意if判斷中對於變量的處理,須要加引號,以避免一些沒必要要的錯誤。沒有加雙引號會在一些含空格等的字符串變量判斷的時候產生錯誤。好比[ -n "$var" ]若是var爲空會出錯blog
四、判斷是不支持浮點值的進程
五、若是隻單獨使用號,系統會認爲是輸出或者輸入重定向,雖然結果顯示正確,可是實際上是錯誤的,所以要對這些符號進行轉意開發
六、在默認中,運行if語句中的命令所產生的錯誤信息仍然出如今腳本的輸出結果中字符串
七、使用-z或者-n來檢查長度的時候,沒有定義的變量也爲0變量
八、空變量和沒有初始化的變量可能會對shell腳本測試產生災難性的影響,所以在不肯定變量的內容的時候,在測試好前使用-n或者-z測試一下技術
九、? 變量包含了以前執行命令的退出狀態(最近完成的前臺進程)(能夠用於檢測退出狀態)