使用awk显示磁盘使用率超过10%的设备,并打印列标题

时间:2014-04-13 06:08:05

标签: linux awk diskusage

以下命令显示文件系统使用率超过10%的设备。但是它没有显示列标题。这是我使用的命令:

df -Ph | awk '+$5 >= 10 {print}'

我想要这样的输出

Filesystem                      Size  Used Avail Use% Mounted on 
/dev/mapper/VolGroup00-LogVol00   9.7G  1.9G  7.4G  21% /
/dev/mapper/VolGroup00-LogVol     5.0G  665M  4.1G  14% /app 
server:/data                      5.0G  546M  4.3G  12% /data

2 个答案:

答案 0 :(得分:4)

你可以使用awk打印线路的两个条件:磁盘使用率高于10%,第一个参数是“Filesystem”:

df -Ph | awk '(+$5 >= 10 || $1=="Filesystem") {print}'
按照Jotne的建议

编辑,您可以像这样编写更短的内容(print是默认操作):

df -Ph | awk '+$5>=10 || $1=="Filesystem"'

答案 1 :(得分:3)

如果我们正在查看第一行或第五个字段大于或等于10,则打印。

df -Ph | awk 'NR==1 || +$5 >= 10'

Awk的默认操作是打印行,因此可以省略块。