05-23-2019
Quote:
Originally Posted by
Scrutinizer
Thanks nezabudka,
Indeed -b can be used to ignore leading blanks; the sed statement can be used to remove leading spaces and correct the output..
The -V option is a non-standard extension that is carried by GNU Sort and BSD Sort and is used when the dot in the number signifies a major.minor version number. The -n option is used for numerical sorts.
They give different results, depending on the meaning of the dotted number, the OP has not indicated what is the case..
S.
9 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I want to sort alphabetically on the first field and sort in descending numerical order on the 2nd field. With a normal "sort -r -n" it does this:
abc ||| 5e-05 ||| bla
abc ||| 3 ||| ble
def ||| 1 ||| abc
def ||| 0.2 ||| def
As you can see it ignores the fact that 5e-05 is actually 0.00005... (1 Reply)
Discussion started by: FrancoisCN
1 Replies
2. Shell Programming and Scripting
Hi,
This is my input file:
ali 5 usa abc
abu 4 uk bca
alan 6 brazil bac
pinky 10 utah sdc
My desired output:
pinky 10 utah sdc
alan 6 brazil bac
ali 5 usa abc
abu 4 uk bca
Based on the column two, I want to do the descending order and print out other related column at the... (3 Replies)
Discussion started by: patrick87
3 Replies
3. Shell Programming and Scripting
So, I will be working with someone and basically we are trying to build a form that is submitted most likely via the web and the data is just a string of numbers.
like:
19383882872201110929282821818182827349190102837364718191001932873711
Now, each number is part of a numerical value of... (4 Replies)
Discussion started by: tlarkin
4 Replies
4. Shell Programming and Scripting
Hello,
I have this sample data:
01 * * * *
01 * * * *
01 * * * *
01 * * * *
01 0 * * *
01 0 * * *
01 0 * * *
01 0 * * *
02 * * * 0
02 * * * 0
02 * * * 6
02 * * * 6
02 0 * * 1
02 0 * * 1
02 0 * * 2
02 0 * * 2
02 0 * * 3 (3 Replies)
Discussion started by: gio001
3 Replies
5. UNIX for Advanced & Expert Users
Hello all -
I am to this forum and fairly new in learning unix and finding some difficulty in preparing a small shell script. I am trying to make script to sort all the files given by user as input (either the exact full name of the file or say the files matching the criteria like all files... (3 Replies)
Discussion started by: pankaj80
3 Replies
6. UNIX for Dummies Questions & Answers
I have a column of numbers in the following format:
1.722e-05
2.018e-05
2.548e-05
2.747e-05
7.897e-05
4.016e-05
4.613e-05
4.613e-05
5.151e-05
5.151e-05
5.151e-05
6.1e-05
6.254e-05
7.04e-05
7.12e-05
7.12e-05 (6 Replies)
Discussion started by: evelibertine
6 Replies
7. Shell Programming and Scripting
Input file:
100%ABC2 3.44E-12 USA
A2M%H02579 0E0 UK
100%ABC2 5.34E-8 UK
100%ABC2 3.25E-12 USA
A2M%H02579 5E-45 UK
Output file:
100%ABC2 3.44E-12 USA
100%ABC2 3.25E-12 USA
100%ABC2 5.34E-8 UK
A2M%H02579 0E0 UK
A2M%H02579 5E-45 UK
Code try:
sort -k1,1 -g -k2 -r input.txt... (2 Replies)
Discussion started by: perl_beginner
2 Replies
8. Shell Programming and Scripting
Hi Experts,
I have a filelist collected from another server , now want to sort the output using date/time stamp filed.
- Filed 6, 7,8 are showing the date/time/stamp.
Here is the input:
#----------------------------------------------------------------------
-rw------- 1 root ... (3 Replies)
Discussion started by: rveri
3 Replies
9. UNIX for Beginners Questions & Answers
Hi,
PROCINFO seems to be a great function but I don't manage to make it works.
input:
B,A,C
B
B,B
As an example, just want to count the occurence of each letter across the input and sort them by decreased order.
Wanted output:
B 4
A 1
C 1
When I use this command, the PROCINFO... (4 Replies)
Discussion started by: beca123456
4 Replies
LEARN ABOUT CENTOS
sort::versions
Versions(3) User Contributed Perl Documentation Versions(3)
NAME
Sort::Versions - a perl 5 module for sorting of revision-like numbers
SYNOPSIS
use Sort::Versions;
@l = sort { versioncmp($a, $b) } qw( 1.2 1.2.0 1.2a.0 1.2.a 1.a 02.a );
...
use Sort::Versions;
print 'lower' if versioncmp('1.2', '1.2a') == -1;
...
use Sort::Versions;
%h = (1 => 'd', 2 => 'c', 3 => 'b', 4 => 'a');
@h = sort { versioncmp($h{$a}, $h{$b}) } keys %h;
DESCRIPTION
Sort::Versions allows easy sorting of mixed non-numeric and numeric strings, like the 'version numbers' that many shared library systems
and revision control packages use. This is quite useful if you are trying to deal with shared libraries. It can also be applied to
applications that intersperse variable-width numeric fields within text. Other applications can undoubtedly be found.
For an explanation of the algorithm, it's simplest to look at these examples:
1.1 < 1.2
1.1a < 1.2
1.1 < 1.1.1
1.1 < 1.1a
1.1.a < 1.1a
1 < a
a < b
1 < 2
1.1-3 < 1.1-4
1.1-5 < 1.1.6
More precisely (but less comprehensibly), the two strings are treated as subunits delimited by periods or hyphens. Each subunit can contain
any number of groups of digits or non-digits. If digit groups are being compared on both sides, a numeric comparison is used, otherwise a
ASCII ordering is used. A group or subgroup with more units will win if all comparisons are equal. A period binds digit groups together
more tightly than a hyphen.
Some packages use a different style of version numbering: a simple real number written as a decimal. Sort::Versions has limited support for
this style: when comparing two subunits which are both digit groups, if either subunit has a leading zero, then both are treated like
digits after a decimal point. So for example:
0002 < 1
1.06 < 1.5
This won't always work, because there won't always be a leading zero in real-number style version numbers. There is no way for
Sort::Versions to know which style was intended. But a lot of the time it will do the right thing. If you are making up version numbers,
the style with (possibly) more than one dot is the style to use.
USAGE
The function "versioncmp()" takes two arguments and compares them like "cmp". With perl 5.6 or later, you can also use this function
directly in sorting:
@l = sort versioncmp qw(1.1 1.2 1.0.3);
The function "versions()" can be used directly as a sort function even on perl 5.005 and earlier, but its use is deprecated.
AUTHOR
Ed Avis <ed@membled.com> and Matt Johnson <mwj99@doc.ic.ac.uk> for recent releases; the original author is Kenneth J. Albanowski
<kjahds@kjahds.com>. Thanks to Hack Kampbjorn and Slaven Rezic for patches and bug reports.
Copyright (c) 1996, Kenneth J. Albanowski. All rights reserved. This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
POD ERRORS
Hey! The above document had some coding errors, which are explained below:
Around line 141:
Non-ASCII character seen before =encoding in 'Kampbjorn'. Assuming UTF-8
perl v5.16.3 2003-08-24 Versions(3)