# Get data. my @df_k = split(/\n/, `df -k`); # Remove header. shift(@df_k); # Parse line. foreach (@df_k) { my ($a, $b, $c, $d, $e, $f) = split(/\s+/, $_); $_ = [ $b/1024, $c/1024, $d/1024, $e, $f ]; } # Sort. my @sorted_by_drive = sort { $a->[4] cmp $b->[4] } @df_k; # Quick way of printing for now. use Data::Dumper (); print(Data::Dumper->Dump( [ \@sorted_by_drive ], [qw( $sorted_by_drive )], ));