本文以統(tǒng)計(jì)磁盤文件系統(tǒng)已用空間為例說明awk的用法,使用命令df可獲得磁盤文件系統(tǒng)的相關(guān)信息,如下圖所示
第3列Used便是已用空間的數(shù)據(jù),這是正常的情形。當(dāng)?shù)?列Filesystem文本過長時(shí),就有可能換行輸出,這是特殊的情形,如下圖所示
針對(duì)這兩種情形,如何寫出有效的命令腳本來統(tǒng)計(jì)Used列的數(shù)據(jù)和呢?從上面兩圖觀察對(duì)比顯然可得,以空白符開頭的文本行便是特殊情形,需要計(jì)算的是第2列;而正常情形的文本行,便是第3列。因此可得出awk腳本:
awk '{ if($0~/^ /) s+=$2; else s+=$3;} END{ print "Used total is: "s }'。
用于正常情形,輸出如下
而特殊情形,則輸出如下
posted on 2012-11-01 17:47
春秋十二月 閱讀(1696)
評(píng)論(1) 編輯 收藏 引用 所屬分類:
System