Linux 運維必備:這四個 Shell 腳本讓你的效率提升 300%
你是否也經(jīng)歷過這些崩潰瞬間?
- 凌晨3點被報警叫醒,手動查日志半小時才發(fā)現(xiàn)是磁盤滿了
 - 重復(fù)執(zhí)行ps -ef | grep java查看進程狀態(tài),一天敲了20遍
 - 新同事誤刪了關(guān)鍵日志,卻找不到操作記錄。
 
今天分享四個實戰(zhàn)Shell腳本,覆蓋80%日常運維場景,從此告別低效手工操作。

效率翻倍腳本清單
1. 服務(wù)器「開機自檢」腳本
功能亮點:
- 開機自動生成健康報告
 - 異常指標(biāo)標(biāo)紅告警
 - 可以根據(jù)自身業(yè)務(wù)情況選擇微信/郵件進行通知。
 

該收集系統(tǒng)健康狀態(tài) :
- 獲取 CPU 負載 (top)
 - 計算 內(nèi)存占用率 (free)
 - 檢查 磁盤使用情況 (df)
 - 監(jiān)測 關(guān)鍵服務(wù)狀態(tài)(systemctl is-active)
 
異常指標(biāo)標(biāo)紅:
- 設(shè)定** CPU >80%、內(nèi)存 >80%、磁盤 >90% **作為告警閾值
 - 超出范圍時,標(biāo)紅顯示
 
運行示例:
請將上述腳本內(nèi)容保存到一個名為 health_check.sh 的文件里。之后,您可以通過運行 bash health_check.sh 來執(zhí)行這個腳本。如果一切順利,您將會看到類似下面展示的結(jié)果。

2. 日志「智能清理」工具
痛點解決:
- 傳統(tǒng)rm -rf容易誤刪重要日志
 - 手動清理無法精準控制時間/大小
 
智能清理邏輯:

- find "$LOG_DIR" -type f -name "*.log" -mtime +$RETENTION_DAYS:這個命令會在 LOG_DIR 目錄中查找所有 .log 文件,并且這些文件的修改時間超過了 RETENTION_DAYS 天。-mtime +$RETENTION_DAYS 表示查找修改時間超過 7 天的文件。
 - -exec bash -c '...' bash {} +:對于找到的每個文件,-exec 會執(zhí)行一個 Bash 腳本。bash -c '...' 中的腳本會對每個文件執(zhí)行歸檔操作。
 
3. 進程自動監(jiān)控與重啟腳本
為了確保我們的服務(wù)能夠平穩(wěn)運行,當(dāng)遇到進程意外退出的情況時,我們希望能自動監(jiān)控并重啟這些進程,以減少對業(yè)務(wù)的影響。這個腳本正是為此而設(shè)計的,它可以幫助我們實現(xiàn)這一目標(biāo)。

4. 故障「秒級定位」神器
功能演示:

使用 ./log_scan.sh 腳本,快速抓取系統(tǒng)與應(yīng)用層錯誤,秒級定位問題,助力高效故障排查!
核心代碼:

新手避坑指南
Shell腳本四大死亡陷阱:
- 未處理的空格路徑(永遠用引號包裹變量)
 - 直接使用rm -rf $VAR(必須先檢查變量非空)
 - 忽略錯誤退出碼(關(guān)鍵操作前加set -e)
 - 跨平臺換行符問題(用dos2unix預(yù)處理腳本)
 















 
 
 









 
 
 
 