Sort in the (approx.?) rpm versioning order.
authorlace <>
Mon, 24 Dec 2007 16:54:32 +0000 (16:54 +0000)
committerlace <>
Mon, 24 Dec 2007 16:54:32 +0000 (16:54 +0000)
bin/sortn [new file with mode: 0755]

diff --git a/bin/sortn b/bin/sortn
new file mode 100755 (executable)
index 0000000..bf87d95
--- /dev/null
+++ b/bin/sortn
@@ -0,0 +1,24 @@
+#! /usr/bin/perl
+# $Id$
+
+use strict;
+use warnings;
+print sort {
+       my $a=$a;
+       my $b=$b;
+       while ($a ne "" || $b ne "") {
+               $a=~s/^(\D+)//s;
+               my $as=$1;
+               $b=~s/^(\D+)//s;
+               my $bs=$1;
+               my $rs=$as cmp $bs;
+               return $rs if $rs;
+               $a=~s/^(\d+)//s;
+               my $an=$1;
+               $b=~s/^(\d+)//s;
+               my $bn=$1;
+               my $rn=$an<=>$bn;
+               return $rn if $rn;
+       }
+       return 0;
+} @ARGV ? map "$_\n",@ARGV : <>;