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 |