Convert column values into row


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Convert column values into row
# 1  
Old 02-09-2010
Convert column values into row

hi,
I have a requirement where in I read the values from a file using awk. The resulting data should be converted into row format from column format.

For ex: My log file login.lst contains the following
Code:
SERVER1 DB1
SERVER2 DB2
SERVER3 DB3
SERVER4 DB4

I use awk to grep only the server names as below

SERV=`cat login.lst | awk '{print $1}' `

echo $SERV prints the output ..

SERVER1
SERVER2
SERVER3
SERVER4

I want the output to be formatted as -- SERVER1 SERVER2 SERVER3 SERVER4

I tried to search the forum for any similar posts, but I couldnt find any clear definition or matching cases.

Can someone please help.

Last edited by Yogesh Sawant; 02-09-2010 at 04:02 AM.. Reason: added code tags
# 2  
Old 02-09-2010
Code:
awk '{printf $1" "}' infile

# 3  
Old 02-09-2010
For multiple columns

Hi All,

good morning.

I have an output file out of a native database in the following format..
Code:
term_id = "ABCDEF"
post_dat = "20090905"
hpr1_amt_beg = 30090000

term_id = "ade"
post_dat = "20090904"
hpr1_amt_beg = 3009123
 
term_id = "DEF"
post_dat = "20090903"
hpr1_amt_beg = 30090030

and i need it to be printed in the following format...
Code:
 
term_id post_dat hpr1_amt_beg
ABCDEF 20090905 30090000 
ADE    20090904 30090030
DEF    20090903 30090030

I tried using awk & sed...but somehow the output format is not exactly coming as above.Can somebody help me out here...Thanks mates.

Last edited by Scott; 02-09-2010 at 03:15 AM.. Reason: Please use code tags
# 4  
Old 02-09-2010
can you show us what you have tried?
# 5  
Old 02-09-2010
Hi Malcolm,

The following is the syntax which i tried a while ago...
Code:
 
awk '{FS = "="}{printf $1" "$2" "}' test.out >> test1.out

Here the test.out is the input file which contains the contents
Code:
term_id = "ABCDEF"
post_dat = "20090905"
hpr1_amt_beg = 30090000
term_id = "ade"
post_dat = "20090904"
hpr1_amt_beg = 3009123
term_id = "DEF"
post_dat = "20090903"
hpr1_amt_beg = 30090030

..and i get the output as follows in a single line...
Code:
 
term_id   "ABCDEF" post_dat   "20090905" hpr1_amt_beg   30090000   term_id   "ade" post_dat   "20090904" hpr1_amt_beg   3009123   term_id   "DEF" post_dat   "20090903" hpr1_amt_
beg   30090030

i believe somewhere i have to break the line when the "term_id" column starts to print it in the next line.I am doing trial and error.i hope i will crack it soon.

Last edited by Scott; 02-09-2010 at 03:15 AM.. Reason: Please use code tags
# 6  
Old 02-09-2010
check this Post, it will help you...

https://www.unix.com/shell-programmin...ows-colum.html


# 7  
Old 02-09-2010
Thanks mate... i will try it and let it know in the thread.

---------- Post updated at 04:38 PM ---------- Previous update was at 10:49 AM ----------

Thanks mate..it worked.

This is the snippet///
Code:
awk '/term_id/ { printf $3 " " };/post_dat/ {printf $3 " "} ;/hpr1_amt_beg/ {printf $3 "\n"} ;' test.out


Last edited by Scott; 02-09-2010 at 09:47 AM..
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Convert Data from Column to Row

Hi FileA.txt E_TIM 16, ETE 15, EOND 26, EEC 81, E_1 un, E_2 un, E_3 un, E_4 284, E_TIM 17, ETE 15, EOND 29, EEC 82, E_1 un, E_2 un, E_3 un, E_4 249, (6 Replies)
Discussion started by: asavaliya
6 Replies

2. Shell Programming and Scripting

[Solved] Convert Row To column

Hi Folks, I am using db2 command -> db2 list tablespace show detail Tablespace ID = 10 Name = TSCDDHLMSUM Type = Database managed space Contents = All permanent data.... (5 Replies)
Discussion started by: ckwan
5 Replies

3. Shell Programming and Scripting

How to convert the row to column in Perl?

Dear Perl users, Could you help me how to convert from row to column if I've a case below: Linux 2014_01_24 CPU 10 Linux 2014_01_24 MEM 20 UNIX 2014_01_24 CPU 30 UNIX 2014_01_24 MEM ... (6 Replies)
Discussion started by: askari
6 Replies

4. Shell Programming and Scripting

Print every 5 4th column values as separate row with different first column

Hi, I have the following file, chr1 100 200 20 chr1 201 300 22 chr1 220 345 23 chr1 230 456 33.5 chr1 243 567 90 chr1 345 600 20 chr1 430 619 21.78 chr1 870 910 112.3 chr1 914 920 12 chr1 930 999 13 My output would be peak1 20 22 23 33.5 90 peak2 20 21.78 112.3 12 13 Here the... (3 Replies)
Discussion started by: jacobs.smith
3 Replies

5. Shell Programming and Scripting

Script: Convert row in to column

Hi, i need to convert SG_ERP1 SG_ERP2 SG_ERP3 in to: SG_ERP1 SG_ERP2 SG_ERP3 It's possibile? (16 Replies)
Discussion started by: elilmal
16 Replies

6. Shell Programming and Scripting

convert row to column with respect of first column.

Input file A.txt :- C2062 -117.6 -118.5 -117.5 C5145 0 0 0 C5696 0 0 0 Output file B.txt C2062 X -117.6 C2062 Y -118.5 C2062 Z -117.5... (4 Replies)
Discussion started by: asavaliya
4 Replies

7. Shell Programming and Scripting

Convert row to column

Hi, I have a file like this 50 1 2 1374438 50 1 2 1682957 50 5 2 1453574 50 10 2 1985890 100 1 2 737307 100 5 2 1660204 100 10 2 2148483 and I want to convert this by... (1 Reply)
Discussion started by: gvj
1 Replies

8. Shell Programming and Scripting

convert a column to row output?

Getting tired of cut-and-paste...so I thought I would post a question. how do I change this column output to a single row? from this: # vgdisplay -v /dev/vgeva05 | grep dsk | awk '{print $3}' /dev/dsk/c6t0d5 /dev/dsk/c11t0d5 /dev/dsk/c15t0d5 /dev/dsk/c18t0d5 /dev/dsk/c7t0d5... (8 Replies)
Discussion started by: mr_manny
8 Replies

9. Shell Programming and Scripting

column to row convert - script - help

Hi, I have a file named col.txt 1.000 2.000 3.000 4.000 5.000 6.000 7.000 8.000 I should get this 1.000 5.000 2.000 6.000 3.000 7.000 (10 Replies)
Discussion started by: G0Y
10 Replies

10. UNIX for Dummies Questions & Answers

convert column into row with some modifier

A file content have 1 1:-0.289433 2:0.833778 3:0.314471 4:-0.289433 5:-0.81876 6:-0.456693 7:-0.17511 8:-0.644555 9:-0.00666341 10:-1.13603 I will like to have that column into row with numbers to be printed (red color) only after colon output shud be like that -0.289433... (1 Reply)
Discussion started by: cdfd123
1 Replies
Login or Register to Ask a Question