#!/usr/bin/nawk -f # # mdf - df(1) "-k" option with "MB/GB/TB" suffixes # 29 Sep 2001, Antoni Sawicki # BEGIN { LSCMD="/usr/bin/df -k" printf("Device Total Used Free Cap Mounted On\n") while(LSCMD|getline) if ($1 !~ /^Filesystem/) { # Device and total size count($2) if (length($1) >= 23) $1=$1 "\n " printf("%-23s %6.1f %2s", $1, nsize, unit) # Used space count($3) printf(" %6.1f %2s", nsize, unit) # Avaiable space count($4) printf(" %6.1f %2s", nsize, unit) # Percentage and Mounted On printf(" %3s %s\n", $5, $6) } close(PSCMD) } function count(osize) { if(osize >= 1024 && osize < 1024^2 ) { nsize = osize/1024; unit = "Mb" } else if(osize >= 1024^2 && osize < 1024^3 ) { nsize = osize/1024^2; unit = "Gb" } else if(osize >= 1024^3 && osize < 1024^4 ) { nsize = osize/1024^3; unit = "Tb" } else { nsize = osize; unit = " k" } }