批量統計磁碟使用率 pssh awk

2021-08-28 11:45:41 字數 1536 閱讀 8659

一、注釋

1、pssh -p 列印輸出,-h遠端主機列表;

2、$ 變數子串,替換所有-為空,即刪除;

3、begin/end:awk特殊模式,本文用來列印選單&獲取迴圈結果;

4、awk陣列:與shell不同,下標不侷限為數字;

5、sub:awk內建函式,替換字串內容,本文用來刪除ip位址後冒號;

6、printf:格式化輸出

7、區分開pattern

二、**及函式注釋

#!/bin/bash

#2018-09-24磁碟統計##

a=$(date "+%f")

#1、獲取主機磁碟資訊,追加到以當前時間命名的log檔案

log_file() .log

/usr/local/bin/pssh -ph pssh.txt "df -h |awk '/var/' " >>var$.log

}log_file

#2、過濾nfs磁碟使用率,並統計被多少主機掛載

nfs_data() '

/usr/bin/awk '$7~/data/end}' data$.log |sort -rn -k3

}nfs_data

echo "**********disk >70**********===="

#3、列印nfs、var磁碟使用率超過70%的主機資訊並排序

data_var() '

/usr/bin/awk '}' data$.log |sort -rn -k2

/usr/bin/awk '}' var$.log |sort -rn -k2

}data_var

#刪除log

mv data$.log /dev/null

mv var$.log /dev/null

三、awk**縮排(裝x版)

#!/bin/bash

#2018-09-24磁碟統計##

a=$(date "+%f")

log_file() .log

/usr/local/bin/pssh -ph pssh.txt "df -h |awk '/var/' " >>var$.log

}log_file

nfs_data() '

/usr/bin/awk '

$7~/data/

end}' data$.log |sort -rn -k3

}nfs_data

echo "**********disk >50**********===="

data_var() '

/usr/bin/awk '

}' data$.log |sort -rn -k2

/usr/bin/awk '

}' var$.log |sort -rn -k2

}data_var

mv data$.log /dev/null

mv var$.log /dev/null

2018-09-27

Shell之批量監控主機磁碟使用率

1 本地磁碟監控 use rate list df h awk dev 結果 dev sda1 10 for use rate in use rate list do part name use rate if use rate ge 80 then echo warning part name p...

cpu使用率統計

cat proc stat得到 user nice system idle iowait irq softirq stealstolen guest 的9元組 再採兩個夠短的時間點,做差計算即可 cat proc pid stat讀取到 pid 6873 程序號utime 1587 該任務在使用者態...

磁碟使用率達到100

磁碟使用率達到100 問題描述 電腦開機後電腦磁碟使用率100 且居高不下,通過在網上搜尋辦法,關閉服務家庭組 superfetch服務沒有多大效果,開始關掉super fetch後發現有了效果,後來開啟電腦後又出現了。我開始以為是電腦自啟了服務然後我又點開設定發現關閉的服務沒有啟用,所以不是服務的...