要debug同事寫的腳本但是尼瑪看不懂衔肢,真么辦?
Bash到人話翻譯機:http://explainshell.com/
別坑同事
每個重要七扰、循環(huán)锉桑、需要人管的腳本開頭必寫:
set -euo pipefail
很多腳本都是利用類似于cron或者rundeck的scheduler來定期跑的,如果腳本失敗會通知人去修改偏竟。如果不去set -euo pipefail
煮落,腳本中可能有指令失敗了,然而腳本運行完畢之后仍然顯示成功(然后通知就沒有發(fā)出去踊谋,然后你家oncall就被你無聲地害死了)蝉仇。
詳見:http://blog.kablamo.org/2015/11/08/bash-tricks-eux/
調(diào)試bash腳本用set -x
,這樣每個指令開跑之前都會print出來再跑殖蚕。
登錄信息別放Version Control里
可以放在環(huán)境參數(shù)里轿衔,也可以寫一個config.cfg
文件,然后在腳本里面source 'config.cfg'
睦疫。working directory這種因環(huán)境而變的參數(shù)也應(yīng)該放在config.cfg
文件里害驹。