註意事項
1)開頭加直譯器:#!/bin/bash
2)語法縮排,使用四個空格;多加註釋說明。
3)命名建議規則:變數名大寫、區域性變數小寫,函式名小寫,名字型現出實際作用。
4)預設變數是全域性的,在函式中變數local指定為區域性變數,避免汙染其他作用域。
5)有兩個命令能幫助我除錯指令碼:set -e 遇到執行非0時退出指令碼,set-x 列印執行過程。
6)寫指令碼一定先測試再到生產上。
1 獲取隨機字串或數字
獲取隨機8位字串:
獲取隨機8位數字:
cksum:列印CRC效驗和統計位元組
2 定義一個顏色輸出字串函式
function關鍵字定義一個函式,可加或不加。
3 批次建立使用者
4 檢查軟體包是否安裝
5 檢查服務狀態
6 檢查主機存活狀態
方法1: 將錯誤IP放到陣列裡面判斷是否ping失敗三次
方法2: 將錯誤次數放到FAIL_COUNT變數裡面判斷是否ping失敗三次
方法3: 利用for迴圈將ping通就跳出迴圈繼續,如果不跳出就會走到列印ping失敗
7 監控CPU、記憶體和硬碟利用率
1)CPU
藉助vmstat工具來分析CPU統計資訊。
2)記憶體
3)硬碟
8 批次主機磁碟利用率監控
前提監控端和被監控端SSH免互動登入或者金鑰登入。
寫一個配置檔案儲存被監控主機SSH連線資訊,檔案內容格式:IP User Port
9 檢查網站可用性
1)檢查URL可用性
2)判斷三次URL可用性
思路與上面檢查主機存活狀態一樣。
本章寫的Shell指令碼例子都比較實用,在面試題中也經常出現,希望大家參考著多動手寫寫,不要複製貼上就拿來跑,這樣是學不會的!
作者:李振良
來源:http://lizhenliang.blog.51cto.com/7876557/1929044
《Linux雲端計算及運維架構師高薪實戰班》2018年11月26日即將開課中,120天衝擊Linux運維年薪30萬,改變速約~~~~
*宣告:推送內容及圖片來源於網路,部分內容會有所改動,版權歸原作者所有,如來源資訊有誤或侵犯權益,請聯絡我們刪除或授權事宜。
– END –