@lines = split(/\n/,$space{ $host }); shift @lines; my @recs; foreach $disk_used (@lines) { $_ = $disk_used; if (/(\/\w+\/\w+)\s+\w+\s+\d+\s+\d+\s+(\d+)\s+(\d+)%/ ) { $free = 100-$3; push @recs,[$host,$1,$2,$free,"$host:$1 $2 $free%"]; } } @out=map { $_->[-1] } sort { $b->[3] <=> $a->[3] } @recs;