Sorting based on columns


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Sorting based on columns
# 1  
Old 04-10-2007
Sorting based on columns

Hi,
I want a list of entries in 3 space delimited columns. I want to sort entries based on the very first column. Rows can't be changed. For example:

If I have...

Abc Abc Acc
Bca Bda Bdd
Cab Cab Cbc
Dbc Dca Dda
Abc Abc Acc

the output should be...

Abc Abc Acc
Abc Abc Acc
Bca Bda Bdd
Cab Cab Cbc
Dbc Dca Dda

Any pointer on how to go about this will be appreciated.

Thanks
# 2  
Old 04-10-2007
I got the ouptut mentioned in the orginal post by just using the sort command. Is that what your trying?

Thanks
Nagarajan Ganesan
# 3  
Old 04-10-2007
The example given was not a good one I think. Basically, some columns can be empty and every row should also be arranged alphabatically.

Try...

Abc Acc
Bca Bda Bdd
Cbc
Dbc Dca Dda
Abc Abc Acc

to get....

Abc Acc
Abc Abc Acc
Bca Bda Bdd
Cbc
Dbc Dca Dda
# 4  
Old 04-10-2007
Code:
$ echo 'Abc Acc
> Bca Bda Bdd
> Cbc
> Dbc Dca Dda
> Abc Abc Acc
> ' | sort

Abc Abc Acc
Abc Acc
Bca Bda Bdd
Cbc
Dbc Dca Dda

# 5  
Old 04-10-2007
Sorting based on columns

I tried with...

(blank space) Abc Acc
Bca Bda Bdd
(blank space) (blank space) Cbc
Dbc Dca Dda
Abc Abc Acc

I don't get...

Abc Abc Acc
(blank space) Abc Acc
Bca Bda Bdd
(blank space) (blank space) Cbc
Dbc Dca Dda

using sort command. It seems to be sorting using Column 1.

Last edited by MobileUser; 04-10-2007 at 07:55 PM.. Reason: blank spaces not showing in post
# 6  
Old 04-11-2007
The following are the different inputs and output which i got using the sort command,
Input:1
HTML Code:
cat /tmp/s1
    Abc Acc
Bca Bda Bdd
       Cbc
Dbc Dca Dda
Abc Abc Acc
HTML Code:
sort -k1d /tmp/s1
OUTPUT
HTML Code:
Abc Abc Acc
    Abc Acc
Bca Bda Bdd
       Cbc
Dbc Dca Dda
HTML Code:
sort -k1d /tmp/s1  |  sed -e 's/^ *//g'
OUTPUT
HTML Code:
Abc Abc Acc
Abc Acc
Bca Bda Bdd
Cbc
Dbc Dca Dda
Input 2
Note:Blank space is different
HTML Code:
 cat /tmp/s2
  Abc Acc
Bca Bda Bdd
   Cbc
Dbc Dca Dda
Abc Abc Acc
HTML Code:
sort -k1d /tmp/s2  |  sed -e 's/^ *//g'
OUTPUT
HTML Code:
Abc Abc Acc
Abc Acc
Bca Bda Bdd
Cbc
Dbc Dca Dda
Hope this helps.

Thanks
Nagarajan Ganesan.
# 7  
Old 04-11-2007
Quote:
Originally Posted by ennstate
The following are the different inputs and output which i got using the sort command,
Input:1
HTML Code:
cat /tmp/s1
    Abc Acc
Bca Bda Bdd
       Cbc
Dbc Dca Dda
Abc Abc Acc
HTML Code:
sort -k1d /tmp/s1
OUTPUT
HTML Code:
Abc Abc Acc
    Abc Acc
Bca Bda Bdd
       Cbc
Dbc Dca Dda
Code:
sort -k1b /tmp/s1

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Add new columns based on existing columns

Hi all, I am kind of stuck with printing my desired output. Please help me if you know how it can work. My input file(tab separated): NW_0068.1 41,16 100,900 NW_0699.1 4,2,19 200,700,80 My Output file (desired): NW_0068.1 41,16 100,900 100 - 141 NW_0068.1 41,16 100,900 ... (3 Replies)
Discussion started by: sam_2921
3 Replies

2. Shell Programming and Scripting

Sorting by columns

Hi, I have a tab delimited columnar file where I want to remove lines wherever two particular columns match. so for this file, I want to toss the lines where columns 1 and 2 match: a a 1 3 a b 2 4 b b 3 5 because there are matches column 1 and 2 in lines 1 and 3, I would like a script to... (2 Replies)
Discussion started by: mikey11415
2 Replies

3. UNIX for Dummies Questions & Answers

Sorting rows to columns

Dear all, I need your help to sort out a file with more then 15, 000 rows, input file has following format : AT4560 GO:1289GO:8915GO:9243GO:5739GO:6757GO:9245GO:9507output should be like: AT4560 GO:1289 AT4560 GO:8915 AT4560 GO:9243 AT4560 GO:5739 AT4560 GO:6757 AT4560 GO:9245... (5 Replies)
Discussion started by: AAWT
5 Replies

4. Shell Programming and Scripting

Help in sorting multiple columns

Hello all, I am using printf to print the sorted o/p in my script.I am trying to sort in following way but doesn't work. printf "%13s %2s UDP %15s:%s Program %4s HD: %23s HD: %23s %10s %s %s %3s days %3s hours\n" $encoder $i "${ipaddr}" ${portno} ${progno} ${inres} ${outres} ${inrate}... (4 Replies)
Discussion started by: ramman
4 Replies

5. Shell Programming and Scripting

Sorting multiple columns

Hi, We have a requirement of need to sort a file based on fields 1,3 and 4. I tried with sort command however it is not giving expected output, can we achieve any other way? Please let me know ASAP. File a e w a a b a a a a d g a a h h c d a e a a a w Output a b a a a a a w a a d... (4 Replies)
Discussion started by: Nagapandi
4 Replies

6. UNIX for Dummies Questions & Answers

Vertical sorting of columns

Please help to sort columns in this file: a b d f c e 1 4 10 16 7 13 2 5 11 17 8 14 3 6 12 18 9 15 I need to sort COLUMNS (so sort command doesn't work) like this: a b c d e f 1 4 7 10 13 16 2 5 8 11 14 17 3 6 9 12 15 18 I know sed can do it but don't know how... :( (7 Replies)
Discussion started by: coppuca
7 Replies

7. Shell Programming and Scripting

Sorting based on Multiple columns

Hi, I have a requirement whereby I have to sort a flat file based on Multiple Columns (similar to ORDER BY Clause of Oracle). I am getting 10 columns in the flat file and I want the file to be sorted on 1st, 3rd, 4th, 7th and 9th columns in ascending order. The flat file is pipe seperated. Any... (15 Replies)
Discussion started by: dharmesht
15 Replies

8. UNIX for Advanced & Expert Users

sorting of varchar columns

Hi , I need to sort a file based on multiple columns All the columns are of varchar type can any one give me the command to sort for varchar columns? Thanks (3 Replies)
Discussion started by: laxmi131
3 Replies

9. Shell Programming and Scripting

sorting file based on two or more columns

Hi gang. I'm using a unix/mac system and i'm trying to sort a file (more than 1,000,000 lines). chr1 100000965 100001001 - chr1 100002155 100002191 + chr1 100002165 100002201 + chr1 100002525 100002561 - chr1 10000364 ... (2 Replies)
Discussion started by: labrazil
2 Replies

10. UNIX for Advanced & Expert Users

sorting data based on multi columns

Hi all I have data in following format: CSCH74,2007,1,09103,15 CSCH74,2007,10,09103,0 CSCH74,2007,11,09103,0 CSCH74,2007,12,09103,0 CSCH74,2007,2,09103,15 CSCH74,2007,3,09103,194 CSCH74,2007,4,09103,115 CSCH74,2007,5,09103,66 CSCH74,2007,6,09103,0 CSCH74,2007,7,09103,0... (2 Replies)
Discussion started by: sumeet
2 Replies
Login or Register to Ask a Question