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"; }
In reply to Column sort script by mscharrer
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |