Add '|' to data file on particular position


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Add '|' to data file on particular position
# 1  
Old 11-06-2012
Add '|' to data file on particular position

I have below scenario where i am getting a flat file but with some bad data

incoming data format
Code:
id|name|ind|crncy
123|xxx|y|usd
234|yy|n|
456|a|y90.5|vvv|gbp ----bad data

need to cleanse the bad data above by adding a pipe '|' after 3rd column 'ind' if pipe '|' is not already there

desired output
Code:
id|name|ind|crncy
123|xxx|y|usd
234|yy|n|
456|a|y|90.5|vvv|gbp

Note: Indicator column value can be Y or N ,if that helps

Last edited by Scrutinizer; 11-06-2012 at 01:16 PM.. Reason: moved code tags to right place
# 2  
Old 11-06-2012
Hi, try:
Code:
awk 'NR>1 && $3!~/^[yn]$/{sub(/./,"&|",$3)}1' FS=\| OFS=\| infile1

These 2 Users Gave Thanks to Scrutinizer For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Column to row and position data in a text file

Hi everyone.. I have a list of values in a file... a, b, c, 1, 2, 3, aaaa, bbbbb, I am interested in converting this column to a row.. "text",aaaa, bbbb a,1 (7 Replies)
Discussion started by: manihi
7 Replies

2. Shell Programming and Scripting

How to read data from tab delimited file after a specific position?

Hi Experts, I have a tab deliminated file as below myfile.txt Local Group Memberships *Administrators *Guests I need data in below format starting from 4th position. myfile1.txt Administrators Guests the above one is just an example and there could... (15 Replies)
Discussion started by: Litu1988
15 Replies

3. UNIX for Dummies Questions & Answers

Need to copy data from one position to another in file

Hi. I need to write a script that will allow me to copy data from one position in a line to another position while changing the first 2 bytes of the data to a constant. Here is an example of a line of data before and what it needs to look like after. there are about 200 lines in the file. ... (1 Reply)
Discussion started by: wlb_shore_user
1 Replies

4. Shell Programming and Scripting

add more data to existing data in a file

Hi all, I need help to add additional data from file2 to existing data in file 1 using awk, sed or perl. the ID in file 1 should match against field $3 in file2 file1 #this is a new game ID HR_1 BASE1 30 BASE2 37 DETAIL No TYPE L @@ ID HR_10 BASE1 6030 BASE2 ... (4 Replies)
Discussion started by: redse171
4 Replies

5. Shell Programming and Scripting

Extract data based on position

The file has record length 200. And i have 100 search strings which are ten digits of character from 1 to 10 characters all of them are unique, they need to searched in a file. Please help me to pull the records based on position (say from 1-10). test data 1FAHP2DW0BG115206RASHEED ... (6 Replies)
Discussion started by: zooby
6 Replies

6. Shell Programming and Scripting

Moving first position in a file to the last position

hi, I have a file which consists of some records: 2010_06_4010093_001_001|10|ABCDEFGH|9|4010093||0040400||31.12.2009|S|O|X||||20100602093851-31.12.2009|XXBBFC|EFG||||00001| 2010_06_4010162_001_001|11|ABCDEFGH|9|4010162||0040400||31.12.2009|S|O|X||||20100602093851-31.12.2009|XXBBFC|EFG||||00002|... (11 Replies)
Discussion started by: pparthiv
11 Replies

7. Shell Programming and Scripting

Add characters at specific position in file

Hello I want to add some value at the specific position. My file has data like Hello Welcome to UNIX Forums Need Assistance I want to add some value at the end but at same character position for all lines. I want my output file to have data like : Here '_' represents blanks.... (3 Replies)
Discussion started by: dashing201
3 Replies

8. Shell Programming and Scripting

Reading data from different position of a line

I want help reading data from different position of a line cat filename | cut -c120-131 6263-6280 or cat filename | cut -c120-131 -c6263-6280 doesn't seem to work. Please help jak (2 Replies)
Discussion started by: jakSun8
2 Replies

9. UNIX for Dummies Questions & Answers

Add a string in the specified position of the file

I have a file and it contains some text and the length is 145. I need to add a string which is of length 8 at the 120th position. Is it possible to add???? Need help on this....:( (4 Replies)
Discussion started by: sivakumar.rj
4 Replies

10. HP-UX

find the position in a file and insert the data there

Hi, I have a EDI data file ARROWTEST of size 18246 characters. And I want to insert some data after 4200 position in the file. How I can find the position 4200 in that file....Please advise. Regards, (5 Replies)
Discussion started by: isingh786
5 Replies
Login or Register to Ask a Question