Sponsored Content
Top Forums Shell Programming and Scripting Sort only numbers within a string Post 303029894 by nezabudka on Saturday 2nd of February 2019 01:55:31 PM
Old 02-02-2019
It was not easy to figure it out. Just in case I will leave it here. Thanks
Install Perl Module #sudo make install
module Sort::Naturally

Last edited by nezabudka; 02-02-2019 at 03:02 PM..
This User Gave Thanks to nezabudka For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to sort a string with numbers

Hi, I need help to sort a file contents. I am using sort -r option to basically reverse the comparison in descending order. However, i found out that my file is not sorted according, can anyone please help. My data is something like:- Hello world 20.982342864 343 19.234355545 222... (5 Replies)
Discussion started by: ahjiefreak
5 Replies

2. Shell Programming and Scripting

Sort by numbers, then alphabetically

Hey guys, I have a file that contains the following: 366 K 364 Q 12 UB 7 INC. P 4 Law 2 LAMB 2 High 1 QEG 1 OF 1 LC 1 B As you can see, it's already sorted by numerical order, how do I sort it again, breaking the ties by using the alphabetical order of the second column, but... (2 Replies)
Discussion started by: Andrew9191
2 Replies

3. Shell Programming and Scripting

How to Sort Floating Numbers Using the Sort Command?

Hi to all. I'm trying to sort this with the Unix command sort. user1:12345678:3.5:2.5:8:1:2:3 user2:12345679:4.5:3.5:8:1:3:2 user3:12345687:5.5:2.5:6:1:3:2 user4:12345670:5.5:2.5:5:3:2:1 user5:12345671:2.5:5.5:7:2:3:1 I need to get this: user3:12345687:5.5:2.5:6:1:3:2... (7 Replies)
Discussion started by: daniel.gbaena
7 Replies

4. UNIX for Dummies Questions & Answers

sorting numbers with sort -n

Looking for help for sort, I learned that for sorting numbers I use: sort -n but it seems that that is not enough when you have numbers like 0.2000E+7 for example, sort -n will not worry about the E+7 part, and will just sort the numbers like 0.2000. Exapmle: cat example.txt .91000E+07... (9 Replies)
Discussion started by: cosmologist
9 Replies

5. Shell Programming and Scripting

Sort numbers

Hello, okey so my script is using 4 variables that are either empty or numbers in the following format: NUMBER_1 NUMBER_2 NUMBER_3 NUMBER_4 So they're basically separated by a space and I need to echo the lowest number, so far I've been doing it like this: echo "2 3 1 3" | tr " "... (6 Replies)
Discussion started by: TehOne
6 Replies

6. Shell Programming and Scripting

Is it Possible to sort a list of hexadecimal numbers using "sort" command?

Hello Everybody :) !!!. i have question in mind, is it possible to sort a list of hexadecimal numbers using "sort" command? (9 Replies)
Discussion started by: Kesavan
9 Replies

7. Shell Programming and Scripting

How to sort version numbers?

I would like to know how to sort version numbers, using bash or perl. I would like to sort file names that are program names with version numbers and extensions, such as hello-0.2.3.tar.gz and hello-0.10.3.tar.gz. Version numbers of computer programs do not comply with the mathematical rule... (3 Replies)
Discussion started by: LessNux
3 Replies

8. Shell Programming and Scripting

Sort numbers which has colon (:) in between

Although i tried multiple option i couldn't find a way to get the rigt ouput. Say i have the following data cat file.txt C request C response C request C response The output should look like (9 Replies)
Discussion started by: varu0612
9 Replies

9. Shell Programming and Scripting

how to sort numbers

I have files like this: 1 3 4 6 14 3 6 I want to extract the highest number. I have tried using cat filename | sort but then 9 would become higher than 14. So how do I sort? (1 Reply)
Discussion started by: locoroco
1 Replies

10. Shell Programming and Scripting

Sort based on numbers

I have a file which has the following data :- how can I sort the data in descending order . My files may have the first column with 1 to 10000 numbers .I need to arrange them in descending order . Thanks (2 Replies)
Discussion started by: lazydev
2 Replies
Sort::Key::Natural(3pm) 				User Contributed Perl Documentation				   Sort::Key::Natural(3pm)

NAME
Sort::Key::Natural - fast natural sorting SYNOPSIS
use Sort::Key::Natural qw(natsort); my @data = qw(foo1 foo23 foo6 bar12 bar1 foo bar2 bar-45 foomatic b-a-r-45); my @sorted = natsort @data; print "@sorted "; # prints: # b-a-r-45 bar1 bar2 bar12 bar-45 foo foo1 foo6 foo23 foomatic use Sort::Key::Natural qw(natkeysort); my @objects = (...); my @sorted = natkeysort { $_->get_id } @objects; DESCRIPTION
This module extends the Sort::Key family of modules to support natural sorting. Under natural sorting, strings are split at word and number boundaries, and the resulting substrings are compared as follows: o numeric substrings are compared numerically o alphabetic substrings are compared lexically o numeric substrings come always before alphabetic substrings Spaces, symbols and non-printable characters are only considered for splitting the string into its parts but not for sorting. For instance "foo-bar-42" is broken in three substrings "foo", "bar" and 42 and after that the dashes are ignored. Note, that the sorting is case sensitive. To do a case insensitive sort you have to convert the keys explicitly: my @sorted = natkeysort { lc $_ } @data Also, once this module is loaded, the new type "natural" (or "nat") will be available from Sort::Key::Maker. For instance: use Sort::Key::Natural; use Sort::Key::Maker i_rnat_keysort => qw(integer -natural); creates a multikey sorter "i_rnat_keysort" accepting two keys, the first to be compared as an integer and the second in natural descending order. There is also an alternative set of natural sorting functions that recognize floating point numbers. They use the key type "natwf" (abreviation of "natural_with_floats"). FUNCTIONS the functions that can be imported from this module are: natsort @data returns the elements of @data sorted in natural order. rnatsort @data returns the elements of @data sorted in natural descending order. natkeysort { CALC_KEY($_) } @data returns the elements on @array naturally sorted by the keys resulting from applying them "CALC_KEY". rnatkeysort { CALC_KEY($_) } @data is similar to "natkeysort" but sorts the elements in descending order. natsort_inplace @data rnatsort_inplace @data natkeysort_inplace { CALC_KEY($_) } @data rnatkeysort_inplace { CALC_KEY($_) } @data these functions are similar respectively to "natsort", "rnatsort", "natsortkey" and "rnatsortkey", but they sort the array @data in place. $key = mkkey_natural $string given $string, returns a key that can be compared lexicographically to another key obtained in the same manner, results in the same order as comparing the former strings as in the natural order. If the argument $key is not provided it defaults to $_. natwfsort @data rnatwfsort @data natkeywfsort { CALC_KEY($_) } @data rnatkeywfsort { CALC_KEY($_) } @data natwfsort_inplace @data rnatwfsort_inplace @data natkeywfsort_inplace { CALC_KEY($_) } @data rnatkeywfsort_inplace { CALC_KEY($_) } @data mkkey_natural_with_floats $key this ugly named set of functions perform in the same way as its s/natwf/nat/ counterpart with the difference that they honor floating point numbers embeded inside the strings. In this context a floating point number is a string matching the regular expression "/[+-]?d+(.d*)?/". Note that numbers with an exponent part (i.e. "1.12E-12") are not recognized as such. Note also that numbers without an integer part (i.e. .2 or "-.12") are not supported either. SEE ALSO
Sort::Key, Sort::Key::Maker. Other module providing similar functionality is Sort::Naturally. COPYRIGHT AND LICENSE
Copyright (C) 2006, 2012 by Salvador Fandin~o, <sfandino@yahoo.com>. This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.4 or, at your option, any later version of Perl 5 you may have available. perl v5.14.2 2012-06-30 Sort::Key::Natural(3pm)
All times are GMT -4. The time now is 08:27 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy