Sponsored Content
Full Discussion: Sort by first row - awk
Top Forums Shell Programming and Scripting Sort by first row - awk Post 302941780 by RudiC on Tuesday 21st of April 2015 06:21:12 AM
Old 04-21-2015
This is not as easy as it seems in the first place. Given you spell "Name" with uppercase "N" and that "N" sorts below all lower case letters, you could try like
Code:
awk -f transp.awk file | LC_ALL=C sort | awk -f transp.awk
Name    a       b       c       d
l       l4      l2      l3      l1
l1      4       2       3       1
l2      1       2       2       2
l3      2       1       2       1

with transp.awk
Code:
                {MX=NF
                 for (i=1; i<=NF; i++) C[NR, i]=$i
                }
END             {for (j=1; j<=NR; j++)  {for (i=1; i<=MX; i++) printf "%s\t", C[i,j]
                                         printf "\n"
                                        }
                }

You may want to add some refinements, like setting MX to the max(NF), or doing some error checking... some awk versions offer their internal sort; that might help as well...
This User Gave Thanks to RudiC For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

sort and semi-duplicate row - keep latest only

I have a pipe delimited file. Key is field 2, date is field 5 (as example, my real file is more complicated of course, but the KEY and DATE are accurate) There can be duplicate rows for a key with different dates. I need to keep only rows with latest date in this case. Example data: ... (4 Replies)
Discussion started by: LisaS
4 Replies

2. Shell Programming and Scripting

awk command : row by row merging of two files

I want to write a scrpit to merge files row wise (actually concatinating) main.txt X Y Z file 1 A B C file 2 1 2 3 now i want the script to check if the file1 is empty or not, if empty then make it like A B C 1 2 3 again to check if second file is empty if not do as done... (0 Replies)
Discussion started by: shashi792
0 Replies

3. Shell Programming and Scripting

Sort a file from specific row onwards

Hello All: I've file in below format. File name is "FIRSTN.TBL": AAAAAA N BBBBBBBBBBBBBBBBBBBBBBB N . . . . ZZZZZZZZZZZZZZZZZZZZZZZZZZ N My file row length is 40 characters and my second column will start from 25th column and it is only... (3 Replies)
Discussion started by: nvkuriseti
3 Replies

4. Shell Programming and Scripting

Sort a the file & refine data column & row format

cat file1.txt field1 "user1": field2:"data-cde" field3:"data-pqr" field4:"data-mno" field1 "user1": field2:"data-dcb" field3:"data-mxz" field4:"data-zul" field1 "user2": field2:"data-cqz" field3:"data-xoq" field4:"data-pos" Now i need to have the date like below. i have just... (7 Replies)
Discussion started by: ckaramsetty
7 Replies

5. Shell Programming and Scripting

Sort data from column to row

Hi, I need somebody's help with sorting data with awk. I've got a file: 10 aaa 4584 12 bbb 6138 20 ccc 4417 21 ddd 7796 10 eee 7484 12 fff ... (5 Replies)
Discussion started by: killerbee
5 Replies

6. Shell Programming and Scripting

Sort each row (horizontally) in AWK or any

Hello, How to sort each row in a document with numerical values and with more than one row. Example Input data (file1.txt): 4 6 8 1 7 2 12 9 6 10 6 1 14 5 7 and I want the the output to look like this(file2.txt): 1 4 6 7 8 2 6 9 10 12 1 5 6 7 14 I've tried sort -n file1.txt >... (12 Replies)
Discussion started by: joseamck
12 Replies

7. Shell Programming and Scripting

Subtracting each row from the first row in a single column file using awk

Hi Friends, I have a single column data like below. 1 2 3 4 5 I need the output like below. 0 1 2 3 4 where each row (including first row) subtracting from first row and the result should print below like the way shown in output file. Thanks Sid (11 Replies)
Discussion started by: ks_reddy
11 Replies

8. UNIX for Dummies Questions & Answers

awk to print first row with forth column and last row with fifth column in each file

file with this content awk 'NR==1 {print $4} && NR==2 {print $5}' file The error is shown with syntax error; what can be done (4 Replies)
Discussion started by: cdfd123
4 Replies

9. Shell Programming and Scripting

awk transpose column to row and sort

I am trying to awk the output from below output for each port: i need separate line with comma source file Output required (3 Replies)
Discussion started by: ranjancom2000
3 Replies

10. UNIX for Beginners Questions & Answers

Sort by values in the 1st row, leaving first four coulumns untouched

Dear all, will be thankful if you can help on sort command. My data looks like (tab separated; number of columns 2317; N of rows ~200000): a b c d V10 V2 V8 V4 V7 xx z y 1000 1 2 0 2 0 tr v m 1001 0 0 1 2 2 rg s ... (7 Replies)
Discussion started by: kush
7 Replies
CSSORT(1p)						User Contributed Perl Documentation						CSSORT(1p)

NAME
cssort -- Czech sort FORMAT
cssort [ "-c"list | "-f"list ["-d"regexp]] [files ...] SYNOPSIS
cssort -c10-15,50-,25-45 < file cssort -f3,5-6 < file cssort -f3,5-6 -s: < file DESCRIPTION
Cssort is a utility that sorts input lines according to rules used in the Czech language. You can run it without any options, then it just uses whole lines for sorting. With the options, it's possible to specify parts of the lines to be used for comparison. list A comma-separated list of integer field numbers or field ranges. The are indexed from 1 and if a range is open (eg. "5-"), it means all remaining fields from the starting number. -c Stands for columns and the list that follows specifies byte ranges on the line. You will probably use this option to sort data with fixed width fields. -f Fields that will be used for sort. -d Delimiter that separates fields in the -f option. It is a Perl regular expression, the default is "[ ]+", which means any number of spaces or tabs in a row. The program assumes ISO-8859-2 encoding. Some way to specify another input encoding will come in the next versions. If you need to sort files with different encodings, you might want to check the cstocs conversion utility. SEE ALSO
Cz::Sort(3), cstocs(1). AUTHOR
Jan Pazdziora, adelton@fi.muni.cz. perl v5.10.1 2010-01-16 CSSORT(1p)
All times are GMT -4. The time now is 04:57 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy