Sponsored Content
Full Discussion: Sort question
Top Forums UNIX for Beginners Questions & Answers Sort question Post 302992937 by jimmyf on Friday 3rd of March 2017 02:24:41 PM
Old 03-03-2017
I'm on Solaris,
Code:
sort -k2 -k4nr file

is giving this:

Code:
xxxx apples xxxx 90 
xxxx apples xxxx 100 
xxxx oranges xxxx 80 
xxxx oranges xxxx 70
xxxx pears xxxx 90 
xxxx pears xxxx 100

 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Sort Question

M 47 HIS:LOT 32 DUTY 2 MIKE, FINISHED MIKE ACTIVE STATUS 23TASK YES GOOD 100TASK NO GOOD ======================================== M 47 HIS:LOT 1 DUTY 1 MIKE, FINISHED MIKE ACTIVE STATUS 23TASK YES GOOD ... (7 Replies)
Discussion started by: bobo
7 Replies

2. UNIX for Dummies Questions & Answers

Sort/Grep Question

Hello all, I have a test file that has the format: ..... O 3.694950 -.895050 1.480000 O 5.485050 .895050 1.480000 Ti -4.590000 4.590000 2.960000 Ti -2.295000 ... (5 Replies)
Discussion started by: aarondesk
5 Replies

3. UNIX for Dummies Questions & Answers

SORT question

I'm looking for a sort command that will sort by zip code first then by last name. (zip code is the last field, last name is first field) data file looks like this. Hope Bob 1234 Main ST. Colorado Springs, CO 80920 I was thinking along the lines of: sort -k9n address.data //for the... (2 Replies)
Discussion started by: ssgatbliss
2 Replies

4. UNIX for Dummies Questions & Answers

UNIX Sort question

I was trying to check for the sort of some columns (say 1-10) of particular file. Now, by default, the Unix sort uses as a separator whitespace (e.g. if you have 'foo bar' then it separates it into 'foo' and 'bar' to use as keys) Now, I know which particular columns I want to use as the sort... (1 Reply)
Discussion started by: rev.meister
1 Replies

5. Shell Programming and Scripting

sort question

Hi all. Is there a way that I can use the sort command too sort the following field by earliest time (12:00AM) to latest time (11:59PM)? 07:12PM 07:53PM 07:54PM 08:07PM 10:15AM 10:21AM TIA!!!!!! (1 Reply)
Discussion started by: lyoncc
1 Replies

6. Shell Programming and Scripting

sort question

Hi all. HPUX - posix shell - script question Here's my data: f1 f2 f3 f4 f5 f6 |02/12/09|12:33PM|3|Oceanview |OVT #1| VISA/MC |02/12/09|12:14PM|3|Oceanview |OVT #1| VISA/MC |02/12/09|09:13AM|4|Oceanview |OVT #1| VISA/MC ... (8 Replies)
Discussion started by: lyoncc
8 Replies

7. Shell Programming and Scripting

sort | uniq question

Hello, I have a large data file: 1234 8888 bbb 2745 8888 bbb 9489 8888 bbb 1234 8888 aaa 4838 8888 aaa 3977 8888 aaa I need to remove duplicate lines (where the first column is the duplicate). I have been using: sort file.txt | uniq -w4 > newfile.txt However, it seems to keep the... (11 Replies)
Discussion started by: palex
11 Replies

8. Shell Programming and Scripting

Sort question.

Hi Guys, I have a file to be sorted and uniq with the following format. S00001002|01|20021231 S00001002|01|20011031 S00001006|01|20120430 S00001006|01|20111231 S00001006|01|20111031 S00001006|01|20110831 S00001006|01|20110731 S00001006|01|20101231 S00001006|01|20091231... (5 Replies)
Discussion started by: nua7
5 Replies

9. UNIX for Dummies Questions & Answers

Sort command question

I have a file like this: /vol/eng_app_0103z /vol/eng_app_0103z /vol/eng_app_0120z /vol/eng_app_0126z /vol/eng_app_0144z /vol/eng_app_0150z /vol/eng_app_0154z /vol/eng_app_01551z /vol/eng_app_01552z /vol/eng_app_0155z /vol/eng_app_0164z /vol/eng_app_0199zWhen I use the sort command... (3 Replies)
Discussion started by: newbie2010
3 Replies

10. Shell Programming and Scripting

Sort command question

I have a question about what the sort command is doing. Here is some sample data: 348201310013RVE 2 600201310013GFJ 70 3302013020101NS 40 600201309013GFJ 70 The sort command that is running is as follows: sort -k 1,3 -k 12,4 input.txt > output.txt ... (6 Replies)
Discussion started by: Drenhead
6 Replies
ARRAY_MULTISORT(3)							 1							ARRAY_MULTISORT(3)

array_multisort - Sort multiple or multi-dimensional arrays

SYNOPSIS
bool array_multisort (array &$array1, [mixed $array1_sort_order = SORT_ASC], [mixed $array1_sort_flags = SORT_REGULAR], [mixed $...]) DESCRIPTION
array_multisort(3) can be used to sort several arrays at once, or a multi-dimensional array by one or more dimensions. Associative ( string) keys will be maintained, but numeric keys will be re-indexed. PARAMETERS
o $array1 - An array being sorted. o $array1_sort_order - The order used to sort the previous array argument. Either SORT_ASC to sort ascendingly or SORT_DESC to sort descendingly. This argument can be swapped with $array1_sort_flags or omitted entirely, in which case SORT_ASC is assumed. o $array1_sort_flags - Sort options for the previous array argument: Sorting type flags: o SORT_REGULAR - compare items normally (don't change types) o SORT_NUMERIC - compare items numerically o SORT_STRING - compare items as strings o SORT_LOCALE_STRING - compare items as strings, based on the current locale. It uses the locale, which can be changed using setlocale(3) o SORT_NATURAL - compare items as strings using "natural ordering" like natsort(3) o SORT_FLAG_CASE - can be combined (bitwise OR) with SORT_STRING or SORT_NATURAL to sort strings case-insensitively This argument can be swapped with $array1_sort_order or omitted entirely, in which case SORT_REGULAR is assumed. o $... - More arrays, optionally followed by sort order and flags. Only elements corresponding to equivalent elements in previous arrays are compared. In other words, the sort is lexicographical. RETURN VALUES
Returns TRUE on success or FALSE on failure. CHANGELOG
+--------+---------------------------------------------------+ |Version | | | | | | | Description | | | | +--------+---------------------------------------------------+ | 5.4.0 | | | | | | | The SORT_NATURAL and SORT_FLAG_CASE were added | | | to $array1_sort_flags as possible sort flags. | | | | | 5.3.0 | | | | | | | The SORT_LOCALE_STRING was added to | | | $array1_sort_flags as possible sort flags. | | | | +--------+---------------------------------------------------+ EXAMPLES
Example #1 Sorting multiple arrays <?php $ar1 = array(10, 100, 100, 0); $ar2 = array(1, 3, 2, 4); array_multisort($ar1, $ar2); var_dump($ar1); var_dump($ar2); ?> In this example, after sorting, the first array will contain 0, 10, 100, 100. The second array will contain 4, 1, 2, 3. The entries in the second array corresponding to the identical entries in the first array (100 and 100) were sorted as well. array(4) { [0]=> int(0) [1]=> int(10) [2]=> int(100) [3]=> int(100) } array(4) { [0]=> int(4) [1]=> int(1) [2]=> int(2) [3]=> int(3) } Example #2 Sorting multi-dimensional array <?php $ar = array( array("10", 11, 100, 100, "a"), array( 1, 2, "2", 3, 1) ); array_multisort($ar[0], SORT_ASC, SORT_STRING, $ar[1], SORT_NUMERIC, SORT_DESC); var_dump($ar); ?> In this example, after sorting, the first array will transform to "10", 100, 100, 11, "a" (it was sorted as strings in ascending order). The second will contain 1, 3, "2", 2, 1 (sorted as numbers, in descending order). array(2) { [0]=> array(5) { [0]=> string(2) "10" [1]=> int(100) [2]=> int(100) [3]=> int(11) [4]=> string(1) "a" } [1]=> array(5) { [0]=> int(1) [1]=> int(3) [2]=> string(1) "2" [3]=> int(2) [4]=> int(1) } } Example #3 Sorting database results For this example, each element in the $data array represents one row in a table. This type of dataset is typical of database records. Example data: volume | edition -------+-------- 67 | 2 86 | 1 85 | 6 98 | 2 86 | 6 67 | 7 The data as an array, called $data. This would usually, for example, be obtained by looping with mysql_fetch_assoc(3). <?php $data[] = array('volume' => 67, 'edition' => 2); $data[] = array('volume' => 86, 'edition' => 1); $data[] = array('volume' => 85, 'edition' => 6); $data[] = array('volume' => 98, 'edition' => 2); $data[] = array('volume' => 86, 'edition' => 6); $data[] = array('volume' => 67, 'edition' => 7); ?> In this example, we will order by $volume descending, $edition ascending. We have an array of rows, but array_multisort(3) requires an array of columns, so we use the below code to obtain the columns, then perform the sorting. <?php // Obtain a list of columns foreach ($data as $key => $row) { $volume[$key] = $row['volume']; $edition[$key] = $row['edition']; } // Sort the data with volume descending, edition ascending // Add $data as the last parameter, to sort by the common key array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data); ?> The dataset is now sorted, and will look like this: volume | edition -------+-------- 98 | 2 86 | 1 86 | 6 85 | 6 67 | 2 67 | 7 Example #4 Case insensitive sorting Both SORT_STRING and SORT_REGULAR are case sensitive, strings starting with a capital letter will come before strings starting with a lowercase letter. To perform a case insensitive search, force the sorting order to be determined by a lowercase copy of the original array. <?php $array = array('Alpha', 'atomic', 'Beta', 'bank'); $array_lowercase = array_map('strtolower', $array); array_multisort($array_lowercase, SORT_ASC, SORT_STRING, $array); print_r($array); ?> The above example will output: Array ( [0] => Alpha [1] => atomic [2] => bank [3] => Beta ) SEE ALSO
usort(3), The comparison of array sorting functions. PHP Documentation Group ARRAY_MULTISORT(3)
All times are GMT -4. The time now is 09:12 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy