#!/usr/bin/perl -w use strict; my @array = ; @array = sort {my $mema = (split(' ',$a))[0]; my $memb = (split(' ',$b))[0]; $mema <=> $memb }@array; print @array; print "\n"; #to get >500000, use grep print grep{(split)[0] > 500000}@array; =prints 104272 - disp+work.exe 10208 0 119540 - disp+work.exe 6376 0 119728 - SavService.exe 2336 0 159176 - disp+work.exe 7292 0 199288 - disp+work.exe 7760 0 255120 - disp+work.exe 4548 0 276124 - disp+work.exe 8948 0 283332 - disp+work.exe 9620 0 327372 - disp+work.exe 7892 0 350060 - disp+work.exe 9712 0 396548 - disp+work.exe 9980 0 397132 - disp+work.exe 2872 0 433064 - disp+work.exe 8712 0 488716 - disp+work.exe 4772 0 507316 - disp+work.exe 7852 0 1830376 - sqlservr.exe 1812 0 507316 - disp+work.exe 7852 0 1830376 - sqlservr.exe 1812 0 =cut __DATA__ 1830376 - sqlservr.exe 1812 0 488716 - disp+work.exe 4772 0 350060 - disp+work.exe 9712 0 396548 - disp+work.exe 9980 0 327372 - disp+work.exe 7892 0 397132 - disp+work.exe 2872 0 276124 - disp+work.exe 8948 0 159176 - disp+work.exe 7292 0 283332 - disp+work.exe 9620 0 199288 - disp+work.exe 7760 0 119540 - disp+work.exe 6376 0 433064 - disp+work.exe 8712 0 255120 - disp+work.exe 4548 0 507316 - disp+work.exe 7852 0 104272 - disp+work.exe 10208 0 119728 - SavService.exe 2336 0