Sponsored Content
Top Forums Shell Programming and Scripting Transpose few columns alone in a Text file Post 302660415 by Corona688 on Friday 22nd of June 2012 12:30:56 PM
Old 06-22-2012
One more try...
Code:
$ cat transp.awk
NR==1 { print $1, $2, $3, $4, $5, $6, $7, $8, "DATE", $(NF-2), $(NF-1), $NF
        for(N=9; N<(NF-2); N++) D[N]=$N
        next }

{
        for(N=9; N<(NF-2); N++)
                print $1, $2, $3, $4, $5, $6, $7, D[N], $N, $(NF-1), $NF
}

$ awk -f transp.awk data
Computer_name Location Currency Munufacturer LocalCurrency USD Delivery_tye Purhcase-type DATE PURCHASE_NuMBER Warranty date
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/1987 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/1988 89 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/1989 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/1990 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/1991 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/1992 43 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/1993 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/1994 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/1995 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/1996 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/1997 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/1998 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/1999 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2000 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2001 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2002 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2003 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2004 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2005 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2006 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2007 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2008 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2009 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2010 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2011 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2012 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2013 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2014 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2015 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2016 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2017 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2018 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2019 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2020 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2021 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2022 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2023 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2024 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2025 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2026 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2027 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2028 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2029 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2030 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2031 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2032 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2033 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2034 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2035 100 A#12345 26/12/2014
Dell US USD Dell-chiNa 200YEN 100USD DOOR 26/12/2036 100 A#12345 26/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/1987 456 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/1988 45 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/1989 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/1990 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/1991 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/1992 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/1993 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/1994 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/1995 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/1996 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/1997 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/1998 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/1999 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2000 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2001 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2002 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2003 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2004 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2005 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2006 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2007 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2008 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2009 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2010 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2011 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2012 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2013 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2014 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2015 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2016 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2017 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2018 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2019 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2020 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2021 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2022 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2023 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2024 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2025 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2026 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2027 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2028 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2029 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2030 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2031 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2032 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2033 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2034 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2035 89 SSSS78799 12/12/2014
Samsung US USD Samsung_india 50000IN 100USD DOOR 26/12/2036 89 SSSS78799 12/12/2014

$

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Transpose an entire text file

Hello all, I want to transpose the rows of a file to the columns (every characters include spaces), i.e.: input: abcdefg 123 456 output: a1 b2 c3 d e4 f5 g6 I wrote a script: #!/bin/csh -f (15 Replies)
Discussion started by: heavenfish
15 Replies

2. Shell Programming and Scripting

Rows to Columns - File Transpose

Hi I have an input file and I want to transpose it but I need to take care that if any field is missing for a record it should be popoulated with space for that field - using a shell script INFILE ---------- emp=1 sal=2 loc=abc emp=2 sal=21 sal=22 loc=xyz emp=5 loc=abc OUTFILE... (10 Replies)
Discussion started by: 46019
10 Replies

3. Shell Programming and Scripting

Transpose columns to Rows

I have a data A 1 B 2 C 3 D 4 E 5 i would like to change the data A B C D E 1 2 3 4 5 Pls suggest how we can do it in UNIX. Start using code tags, thanks. Also start reading your PM's you get from Mods as well read the Forum Rules. That might not do any harm. (24 Replies)
Discussion started by: aravindj80
24 Replies

4. Shell Programming and Scripting

transpose rows to columns

Any tips on how I can awk the input data to display the desired output per below? Thanking you in advance. input test data: 2 2010-02-16 10:00:00 111111111111 bytes 99999999999 bytes 90% 4 2010-02-16 12:00:00 333333333333 bytes 77777777777 bytes 88% 5 2010-02-16 11:00:00... (4 Replies)
Discussion started by: ux4me
4 Replies

5. Shell Programming and Scripting

Transpose a text file.

Hello, I have a text file which is like a matrix m rows and n columns. Now I want to convert it into n rows and m columns. Thanks for hint. (1 Reply)
Discussion started by: zhshqzyc
1 Replies

6. UNIX for Dummies Questions & Answers

Removing columns from a text file that do not have any values in second and third columns

I have a text file that has three columns. But at the end of the text file, there are trailing lines that have missing second and third columns: 4 0.04972604 KLHL28 4 0.0497332 CSTB 4 0.04979822 AIF1 4 0.04983331 DECR2 4 0.04990344 KATNB1 4 4 4 4 How can I remove the trailing... (3 Replies)
Discussion started by: evelibertine
3 Replies

7. Shell Programming and Scripting

Transpose whole file and specific columns

Hi, I have a file like this a b c d e f g h i j k l Case1: I want to transpose the whole file Output1 a d g j b e h k c f i l Case2 Transpose a specific column - Say 3rd (6 Replies)
Discussion started by: jacobs.smith
6 Replies

8. Shell Programming and Scripting

To transpose columns + edit in a txt file

Hi, I have a txt file that looks like log2FoldChange Ontology_term 8.50624450251828 GO:0003700,GO:0003707,GO:0005634,GO:0006355,GO:0043401,GO:0003700,GO:0005634,GO:0006355,GO:0008270,GO:0043565 7.03936870356684 GO:0005515,GO:0008080 6.49606183738682 6.49525073909629 GO:0005515... (4 Replies)
Discussion started by: alisrpp
4 Replies

9. UNIX for Dummies Questions & Answers

Transpose matrix, and rearrange columns common with another file

This is my first post, I apologize if I have broken rules. Some assistance with the following will be very helpful. I have a couple of files, both should ultimately have common columns only, arranged in the same order. This file needs to be transposed, to bring the rows to columns ... (2 Replies)
Discussion started by: abh.kumar
2 Replies

10. Shell Programming and Scripting

Transpose columns to row

Gents Using the attached file and using this code. awk '{print substr($0,4,2)}' input.txt | sort -k1n | awk '{a++}END{for(i in a) print i,a}' | sort -k1 > output i got the this output. 00 739 01 807 02 840 03 735 04 782 05 850 06 754 07 295 08 388 09 670 10 669 11 762 (8 Replies)
Discussion started by: jiam912
8 Replies
All times are GMT -4. The time now is 10:14 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy