Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

Column sort script

by mscharrer (Hermit)
on Aug 13, 2008 at 11:31 UTC ( #704065=CUFP: print w/replies, xml ) Need Help??

Hi fellow monks,

I wrote a small script which sorts text files after the last column (i.e. lines are separated by a given separator).
I use it mainly to sort a list of file paths by file names ignoring directories names by calling it with '/' as separator:

csort / list.txt

It could be improved by adding some sorting order options, etc.

#!/usr/bin/perl # Usage: csort <separator> (<inputfiles> | < input) > output use strict; use warnings; my $sep = shift or die; # separator to use my @list; while (<>) { chomp; push @list, [ /\A (.*) $sep (.*)/x ]; } foreach my $aref ( sort { $a->[1] cmp $b->[1] or $a->[0] cmp $b->[0] } + @list ) { print join ($sep, @$aref), "\n"; }

Replies are listed 'Best First'.
Re: Column sort script
by artist (Parson) on Nov 15, 2008 at 02:09 UTC
    You can also user more elegant solution using File::Basename


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: CUFP [id://704065]
Approved by Corion
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (3)
As of 2018-05-28 02:34 GMT
Find Nodes?
    Voting Booth?