Sponsored Content
Top Forums Shell Programming and Scripting Sort numbers which has colon (:) in between Post 302653825 by alister on Sunday 10th of June 2012 03:42:27 PM
Old 06-10-2012
Quote:
Originally Posted by guruprasadpr
Code:
$ sort -n file.txt | sed -n '/request/{p;s/.*//;x;p;d;}; /response/{p;n;h;T}; /request/!{1h;1!H;}'

With the sample data, that sort command is not performing a numerical sort. Since the first character of the line is not the beginning of a numeric string, all lines compare equal, as if they all had a leading zero, and then they are compared lexicographically to break the tie. [10:1] will incorrectly precede [2:1].

The T test will always succeed -- since the n command will always reset the tested condition -- so it could be replaced with d (since -n is in effect), in which case the sed script would be portable (instead of GNU specific).

The following is a reimplementation of drl's suggestion. Instead of using perl and msort to decorate-sort-dedecorate, it uses sed and sort:
Code:
sed '/req/s/]/:0]/; /res/s/]/:9999]/; s/[][]//g' infile |
sort -nt: -k1,1 -k2,2 |
sed '/req/s/:0//; /res/s/:9999//; s/[:[:digit:]]*/[&]/'

Regards,
Alister

Last edited by alister; 06-10-2012 at 04:48 PM..
This User Gave Thanks to alister 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. 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

5. 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

6. 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

7. 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

8. Shell Programming and Scripting

How to sort a column in UNIX that is colon separated ":" ?

Experts, how to sort this fields with numerical order : -How to use the sort command in this case, I was thinking with -k but it is not working, lan5000 lan5000:1 lan5000:10 lan5000:11 lan5000:12 lan5000:13 lan5000:14 lan5000:15 lan5000:16 lan5000:17 ... (6 Replies)
Discussion started by: rveri
6 Replies

9. Shell Programming and Scripting

Bash, remove numbers after colon

Hello All, I was wondering if someone might know how to do this. I have a word list that is format like the example below. I need to take away the :number after that... is there some kind of command I could use to remove them? 123456:5562 password:1507 123456789:989 qwerty:877... (7 Replies)
Discussion started by: 3therk1ll
7 Replies

10. Shell Programming and Scripting

Sort only numbers within a string

Hi, I am having contents in a file like below, cat testfile rpool/swap rpool/swap14 rpool/swap2 rpool/swap3 I want to sort the above contents like, rpool/swap rpool/swap2 rpool/swap3 rpool/swap14 I have tried in this way, (7 Replies)
Discussion started by: Sumanthsv
7 Replies
CUBRID_NEXT_RESULT(3)							 1						     CUBRID_NEXT_RESULT(3)

cubrid_next_result - Get result of next query when executing multiple SQL statements

SYNOPSIS
bool cubrid_next_result (resource $result) DESCRIPTION
The cubrid_next_result(3) function is used to get results of next query if multiple SQL statements are executed and CUBRID_EXEC_QUERY_ALL flag is set upon cubrid_execute(3). PARAMETERS
o $result -$result comes from a call to cubrid_execute(3) RETURN VALUES
TRUE, when process is successful. FALSE, when process is unsuccessful. EXAMPLES
Example #1 cubrid_next_result(3) example <?php $conn = cubrid_connect("127.0.0.1", 33000, "demodb", "dba"); $sql_stmt = "SELECT * FROM code; SELECT * FROM history WHERE host_year=2004 AND event_code=20281"; $res = cubrid_execute($conn, $sql_stmt, CUBRID_EXEC_QUERY_ALL); get_result_info($res); cubrid_next_result($res); get_result_info($res); function get_result_info($req) { printf(" ------------ get_result_info -------------------- "); $row_num = cubrid_num_rows($req); $col_num = cubrid_num_cols($req); $column_name_list = cubrid_column_names($req); $column_type_list = cubrid_column_types($req); $column_last_name = cubrid_field_name($req, $col_num - 1); $column_last_table = cubrid_field_table($req, $col_num - 1); $column_last_type = cubrid_field_type($req, $col_num - 1); $column_last_len = cubrid_field_len($req, $col_num - 1); $column_1_flags = cubrid_field_flags($req, 1); printf("%-30s %d ", "Row count:", $row_num); printf("%-30s %d ", "Column count:", $col_num); printf(" "); printf("%-30s %-30s %-15s ", "Column Names", "Column Types", "Column Len"); printf("------------------------------------------------------------------------------ "); $size = count($column_name_list); for($i = 0; $i < $size; $i++) { $column_len = cubrid_field_len($req, $i); printf("%-30s %-30s %-15s ", $column_name_list[$i], $column_type_list[$i], $column_len); } printf(" "); printf("%-30s %s ", "Last Column Name:", $column_last_name); printf("%-30s %s ", "Last Column Table:", $column_last_table); printf("%-30s %s ", "Last Column Type:", $column_last_type); printf("%-30s %d ", "Last Column Len:", $column_last_len); printf("%-30s %s ", "Second Column Flags:", $column_1_flags); printf(" "); } ?> The above example will output: ------------ get_result_info -------------------- Row count: 6 Column count: 2 Column Names Column Types Column Len ------------------------------------------------------------------------------ s_name char 1 f_name varchar 6 Last Column Name: f_name Last Column Table: code Last Column Type: varchar Last Column Len: 6 Second Column Flags: ------------ get_result_info -------------------- Row count: 4 Column count: 5 Column Names Column Types Column Len ------------------------------------------------------------------------------ event_code integer 11 athlete varchar 40 host_year integer 11 score varchar 10 unit varchar 5 Last Column Name: unit Last Column Table: history Last Column Type: varchar Last Column Len: 5 Second Column Flags: not_null primary_key unique_key SEE ALSO
cubrid_execute(3). PHP Documentation Group CUBRID_NEXT_RESULT(3)
All times are GMT -4. The time now is 10:34 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy