Search word in 3rd column and move it to next column (4th)


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Search word in 3rd column and move it to next column (4th)
# 1  
Old 04-16-2013
Code Search word in 3rd column and move it to next column (4th)

Hi, I have a file with +/- 13000 lines and 4 column. I need to search the 3rd column for a word that begins with "SAP-" and move/skip it to the next column (4th). Because the 3rd column need to stay empty.

Thanks in advance.Smilie

Code:
89653	36891	OTR-60	SAP-2
89653	36892	OTR-10	SAP-2
89653	36893	OTR-10	SAP-2
89653	36890	OTR-10	SAP-5
89653	36890	SAP-3	
89653	36895	OTR-10	SAP-2
89653	36890	OTR-10	SAP-2
89653	36898	SAP-5
89653	36890	OTR-60	SAP-2
89653	36890	SAP-2	
89653	36890	OTR-10	SAP-3


Code:
89653	36891	OTR-60	SAP-2
89653	36892	OTR-10	SAP-2
89653	36893	OTR-10	SAP-2
89653	36890	OTR-10	SAP-5
89653	36890		SAP-3	
89653	36895	OTR-10	SAP-2
89653	36890	OTR-10	SAP-2
89653	36898		SAP-5
89653	36890	OTR-60	SAP-2
89653	36890		SAP-2	
89653	36890	OTR-10	SAP-3

# 2  
Old 04-16-2013
You can use $3 = SAP as the criterion to look for, or you can use the field count being 3 only:
Code:
$ awk '$3 ~ /^SAP/ {$4 = $3; $3=""}1' OFS="\t" file
89653    36891    OTR-60    SAP-2
89653    36892    OTR-10    SAP-2
89653    36893    OTR-10    SAP-2
89653    36890    OTR-10    SAP-5
89653    36890              SAP-3
89653    36895    OTR-10    SAP-2
89653    36890    OTR-10    SAP-2
89653    36898              SAP-5
89653    36890    OTR-60    SAP-2
89653    36890              SAP-2
89653    36890    OTR-10    SAP-3
$ awk 'NF==3 {$4 = $3; $3=""}1' OFS="\t" file

# 3  
Old 04-16-2013
Thank you Smilie Smilie

---------- Post updated at 04:44 PM ---------- Previous update was at 03:48 PM ----------

I'm trying another script to convert Column to Rows.

Code:
awk '{printf("%c%s", ((/^896+/&&FNR!=1)?ORS:""), $0)}END{print ""}' file.txt > output.txt

but i keep receiving a "NUL" symbol between the words and can not remove them.

89653NUL36891NULOTR-60NULSAP-2

SmilieSmilie
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

How to search for a word in column header that fully matches the word not partially in awk?

I have a multicolumn text file with header in the first row like this The headers are stored in an array called . which contains I want to search for each elements of this array from that multicolumn text file. And I am using this awk approach for ii in ${hdr} do gawk -vcol="$ii" -F... (1 Reply)
Discussion started by: Atta
1 Replies

2. UNIX for Beginners Questions & Answers

UNIX script to compare 3rd column value with first column and display

Hello Team, My source data (INput) is like below EPIC1 router EPIC2 Targetdefinition Exp1 Expres rtr1 Router SQL SrcQual Exp1 Expres rtr1 Router EPIC1 Targetdefinition My output like SQL SrcQual Exp1 Expres Exp1 Expres rtr1 Router rtr1 Router EPIC1 Targetdefinition... (5 Replies)
Discussion started by: sekhar.lsb
5 Replies

3. Shell Programming and Scripting

Solution for replacement of 4th column with 3rd column in a file using awk/sed preserving delimters

input "A","B","C,D","E","F" "S","T","U,V","W","X" "AA","BB","CC,DD","EEEE","FFF" required output: "A","B","C,D","C,D","F" "S", T","U,V","U,V","X" "AA","BB","CC,DD","CC,DD","FFF" tried using awk but double quotes not preserving for every field. any help to solve this is much... (5 Replies)
Discussion started by: khblts
5 Replies

4. Shell Programming and Scripting

Changing values only in 3rd column and 4th column

#cat file testing test! nipw asdkjasjdk ok! what !ok host server1 check_ssh_disk!102.56.1.101!30!50!/ other host server 2 des check_ssh_disk!192.6.1.10!40!30!/ #grep check file| awk -F! '{print $3,$4}'|awk '{gsub($1,"",$1)}1' 50 30 # Output: (6 Replies)
Discussion started by: kenshinhimura
6 Replies

5. 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

6. Shell Programming and Scripting

AWK script to create max value of 3rd column, grouping by first column

Hi, I need an awk script (or whatever shell-construct) that would take data like below and get the max value of 3 column, when grouping by the 1st column. clientname,day-of-month,max-users ----------------------------------- client1,20120610,5 client2,20120610,2 client3,20120610,7... (3 Replies)
Discussion started by: ckmehta
3 Replies

7. Shell Programming and Scripting

1st column,2nd column on first line 3rd,4th on second line ect...

I need to take one column of data and put it into the following format: 1st line,2nd line 3rd line,4th line 5th line,6th line ... Thanks! (6 Replies)
Discussion started by: batcho
6 Replies

8. Shell Programming and Scripting

To search a word in particular column using awk

I have a data in a file like this 1 praveen bmscollege 2 shishira bnmit 3 parthiva geethamce I want to search "praveen" using awk command i tried like this but i did not get awk `$2="praveen" {print $0} ` praveen.lst can anyone help me solving this problem in... (2 Replies)
Discussion started by: praveenhegde
2 Replies

9. Shell Programming and Scripting

How to search for a word in a particular column of a file

How to search for a word like "computer" in a column (eg: 4th field) of a '***' delimited file and add a column at the end of the record which denotes 'Y' if present and 'N' if not. After this, we need to again check for words like 'Dell' but not 'DellXPS' in 5th field and again add another column... (5 Replies)
Discussion started by: Jassz
5 Replies

10. Shell Programming and Scripting

How to extract 3rd line 4th column of a file

Hi, Shell script: I would need help on How to extract 3rd line 4th column of a file with single liner Thanks in advance. (4 Replies)
Discussion started by: krishnamurthig
4 Replies
Login or Register to Ask a Question