Sort by columns


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Sort by columns
# 1  
Old 07-12-2011
Sort by columns

Hello,

I have a text file that looks like this and I need a bash script to:

Code:
12:48:32 PM 002* OUT 000418
01:10:34 PM 002* ONL 000418
01:49:17 PM 001* OUT 000364
01:52:09 PM 001* ONL 000364
...

The fields are: 12-hour format time, some number, state (online, offline) and another number.

What I need to do is a bash script to sort by the last number and also if there are more than 1 same numbers, I want them to be sorted by time (older top and newer as we go down).
My source is already sorted by time but if I sort them by the 5th column with
Code:
sort -k5b

, they come up like this:

Code:
01:49:17 PM 001* OUT 000364
01:52:09 PM 001* ONL 000364
01:10:34 PM 002* ONL 000418
12:48:32 PM 002* OUT 000418

the last two are wrong because 12:48:32 PM is older than 01:10:34 PM.

Could you help me please?
# 2  
Old 07-12-2011
If I'm not missing something:

Code:
sort -k5n -k2 -k1n infile

If there are no entries between 12:00:00 PM to 12.59:59 AM/PM Smilie

Last edited by radoulov; 07-12-2011 at 10:22 AM..
# 3  
Old 07-12-2011
Thank you very much for your fast reply.

Well since my input is already sorted by time, I found out that if I use:
Code:
sort -s -n -k 5

it does the job.

Now I have something like this (which is what I want)

Code:
12:51:16 PM 018* ONL 000021
01:08:35 PM 018* OUT 000021
09:21:44 AM 001* OUT 000034
09:25:05 AM 001* ONL 000034
01:16:48 PM 003* OUT 000048
01:28:15 PM 003* ONL 000048

I want to check the last line of every number in the last column if there is an OUT keyword.
For example here:

Code:
12:51:16 PM 018* ONL 000021
01:08:35 PM 018* OUT 000021

.

Any help on this?

Thank you.
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Script to Sort into columns

Hi geeks! I want to convert the following: EPC-NotificationData: sms:2348034503643 EPC-GroupIds: 300H:10:22-01-2014T07:30:14,22-04-2014T07:30:14 To: EPC-NotificationData: sms:2348034503643, EPC-GroupIds: 300H:10:22-01-2014T07:30:14,22-04-2014T07:30:14 I want them to be on the same... (13 Replies)
Discussion started by: infinitydon
13 Replies

2. Shell Programming and Scripting

sort on multiple columns

hi all, i have a file , having few columns. i wanted to sort it based on 2nd column and then based on 1st column. But i have some problem in first column. first column have characters and numbers, but problem is number of characters are not same in all rows. Few rows have 13 characters and then... (3 Replies)
Discussion started by: deepakiniimt
3 Replies

3. Shell Programming and Scripting

sort second columns in file.

File will have two columns key column and second column which is pipe separated and that need to be sorted. Below is input file. 1, D|B|A|C 2, C|A|B 3, E|A|F|G|H|D|B|C 4, A|B|D|C|F Output should be 1, A|B|C|D 2, A|B|C 3, A|B|C|D|E|F|G|H 4, A|B|D|C|F (11 Replies)
Discussion started by: girish119d
11 Replies

4. Shell Programming and Scripting

sort on multiple columns

Howdy! Need to sort a large .txt file containing the following, using sort. First based on the 1st column, and then on the 2nd column: Group01.01 1000500 31 0.913 -1.522974494 Group01.01 1001500 16 0.684 -0.967496041 Group01.01 36500 19 0.476 na Group01.02 365500 15 0.400 na... (1 Reply)
Discussion started by: sramirez
1 Replies

5. UNIX for Dummies Questions & Answers

Sort 2 columns numerically

Hi, A basic query. In the example file below, I want to sort by column 1 and then by column 2 numerically. I have tried sort -k2n,1 file1 but while this sorts the columns in the correct order, it does not sort column 2 numerically. Any help would be much appreciated. Also, if you have time to... (3 Replies)
Discussion started by: auburn
3 Replies

6. UNIX for Dummies Questions & Answers

Sort file using 2 columns

Hi, I am trying to sort a file first by the string column, then by the number column. file: xyz1 2 xyzX 4 xyz2 1 xyz13 3 xyz11 5 xyz13 10 xyz1 1 xyz10 1 xyz4 2 result should be xyz1 1 xyz1 2 ... (3 Replies)
Discussion started by: fargo
3 Replies

7. UNIX for Dummies Questions & Answers

Sort on multi columns

Hope someone can help, I am trying to sort a generic file like this test2 A 468 0 test2 R 468 1 test2 E 468 1 test2 R 468 3 test2 R 468 4 test2 R 468 459 test2 Z 468 0 test1 A 191 0 test1 R 191 191 test1 Z 191 0 test3 A 3 0 test3 R 3 3 test3 Z 3 0 test0 A 1 0 test4 A 1 0 test4 E... (2 Replies)
Discussion started by: gio001
2 Replies

8. Shell Programming and Scripting

sort data in different columns

Hello all: i have list with the following format Id Name Iid Value 0x4440001 customerCode 44077 0x11d2a PrimaryAddress 57.217.41.201 0x129fa ... (15 Replies)
Discussion started by: mogabr
15 Replies

9. Shell Programming and Scripting

sort columns by field

hello, i have a table contain many columns delimited by blank. i want to sort this table by the 2 columns and 3 one and i want to keep the first line inchanged? how can i do using the sort command? thanks table like : field1 field2 field3 field4 x y z b t h r n .. (4 Replies)
Discussion started by: kamel.seg
4 Replies

10. UNIX for Dummies Questions & Answers

Sort by Columns

Hello, I am new in UNIX I am looking for a instrction to sort a file by columns 6,25 and 41 this is what I tried but not getting the correct result: sort -t= -k1.6,1.25,1.41 to_sort.txt > sorted.txt I used -t= just to get the whole line as one field. INVS80993596SUM994338602XX... (1 Reply)
Discussion started by: murbina
1 Replies
Login or Register to Ask a Question