需要知識:

  • Linux 檢查硬碟使用量 df 指令教學與指令稿範例
    • awk
    • 在 cmd 下似乎不能多行,所以有迴圈的指令寫進 *.sh 比較容易
    • 宣告變數記得 = 前後不要有空格(但是水管 | 前後總是有空格)
    • if-else
  • 排程

指令外框

# 第一版上半部的寫法:
# df / | tail -n +2 > df.txt # / 替換成掛載點;tail -n +2 有去除標頭的效果
# used=$(awk '{ print $5}' df.txt | cut -d'%' -f1 ) # 取得當前掛載點的使用率(去除了百分比);宣告變數注意不要空格
# 善用水管的改良寫法:
used=$(df / | tail -n +2 | awk '{ print $5 }' | cut -d'%' -f1 ) # 取得當前掛載點的使用率(去除了百分比);宣告變數注意不要空格
if [ $used -ge 70 ]
then
  echo "太滿啦"
  # 在這邊做操作,例如刪除或發送通知
else
  echo "還行"
fi

話說有人 if 是這樣寫

if [ $used -ge 70 ]; then
  # 代碼區塊
if

# 後記

晚上 fedi 上的網友分享了 ShellCheck 的工具(網頁版在此),上方的 shell 得到了這個建議,所以說變數用兔子耳朵 " 括起來似乎更保險~