1.注釋
·腳本的參數(shù)
·腳本的用途
·腳本的注意事項(xiàng)
·腳本的寫(xiě)作時(shí)間、作者等
·各個(gè)函數(shù)前的說(shuō)明注釋
·一些較為復(fù)雜的單行命令注釋
2.參數(shù)要規(guī)范
3.縮進(jìn)
4.命名標(biāo)準(zhǔn)
·文件名姐赡,以.sh結(jié)尾
·變量名字要有含義
·統(tǒng)一命名風(fēng)格
5.編碼統(tǒng)一(utf-8)
6.添加執(zhí)行權(quán)限
7.日志和回顯
8.密碼要移除
9.太長(zhǎng)要分開(kāi)
其他注意事項(xiàng)
·路徑盡量使用絕對(duì)路徑唐片,如果用相對(duì)路徑丙猬,最好用./修飾
·優(yōu)先使用bash的變量代替awk涨颜,sed
·簡(jiǎn)單的if盡量用&& ||
,寫(xiě)成單行茧球。比如[ x >2 ] && echo x
·當(dāng)使用export變量的時(shí)候庭瑰,盡量加上子腳本的namespace。保障變量不沖突
· 會(huì)使用trap 捕獲信號(hào)袜腥,并在接受到終止信號(hào)時(shí)執(zhí)行一些收尾的工作
·使用mktemp生成臨時(shí)文件或文件夾
·利用/dev/null 過(guò)濾不友好的輸出信息
·會(huì)利用命令的返回值判斷命令的執(zhí)行情況
·使用文件前要判斷文件是否存在见擦,否則做異常處理
·不要處理ls后的數(shù)據(jù)(比如ls -l|awk '{print $8}'
),ls的結(jié)果非常不確定羹令,并且和平臺(tái)有關(guān)鲤屡。
·讀取文件的時(shí)候不要使用for loop 而是要使用while read
sh -n
檢查語(yǔ)法