stdin replacing 80th character with =


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting stdin replacing 80th character with =
# 1  
Old 12-22-2010
stdin replacing 80th character with =

I'm sure that there is quite a simple solution to this, but so far, I'm not having any luck. I'm redirecting e-mail to a perl script that uses Email::Filter and then does some parsing and forwarding.

I'm using Email::Filter->new() to pull it into a variable. When I forward the message and output the body, every 80th character is replaced with an equals sign. It's clearly representing the new line, but no matter what I can't get rid of them. I've tried using substitution (s/\n\r//gi) and chomp, but neither are clearing them up. I want the message to be in its original form - with the lines concatenated as it was sent.

What am I missing? How can I correct this and get the lines back to their original length?

Thanks,
Doug
# 2  
Old 12-23-2010
Assuming you wish to replace the = sign at 80th position with a new line character, then..
Code:
sed 's/=/\n/80' inputfile > outfile

# 3  
Old 12-23-2010
Quote:
Originally Posted by michaelrozar17
Assuming you wish to replace the = sign at 80th position with a new line character, then..
Thanks.. I may be able to make that work. What I'd like to do is create one string without the newlines or equal signs - just concatenate together. For example, today my text would look like:

line 1 of text= (abbreviated of course)
line 2 of text=
line 3 of text=

But in the original e-mail that is piped in, it looks like:

line 1 of text line 2 of text line 3 of text
# 4  
Old 12-23-2010
Code:
awk -F= '{f?f=f" "$1:f=$1}END{print f}' inputFile

This will take everything before equal sign (=) from all lines in the file and print that in a single line. NOt sure if this is what you want.
If not, pls post input file and expected out.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Replacing special character with sed

Hi All, I have a text file that contains I1SP2 *=*=Y=M=D001D My requirement is to replace all occurrence of =* to =Z expected o/p is I1SP2 *=Z=Y=M=D001D I have tried with sed 's/=*/=Z/g' file sed 's!\=*!\=Z/g' file sed 's!\=*!\=Z!g' file sed 's!\=\*!\=Z!g' file but its not... (3 Replies)
Discussion started by: gotamp
3 Replies

2. Shell Programming and Scripting

Replacing a character between two numbers

Hi, I need to replace a character between two numbers (specifically a - to a _). The problem is that they can be *any* numbers. So, I need a one liner to turn a file like this: 1-2 3-4 55-66 4323-12312893 into the following 1_2 3_4 55_66 4323_12312893 Any help would be appreciated! (5 Replies)
Discussion started by: mikey11415
5 Replies

3. Shell Programming and Scripting

replacing by newline character

I have a file (pema)with a single long record which i have to break up into multiple lines Input s1aaaaaaaaaaaaaaaaaaaaaaas1bbbbbbbbbbs1cccccccccc Output s1aaaaaaaaaaaaaaaaaaaaaaa s1bbbbbbbbbb s1cccccccccc m planning to do it by replacing s1 by \ns1 \n is the new line character i... (5 Replies)
Discussion started by: pema.yozer
5 Replies

4. Shell Programming and Scripting

Replacing the new character with spaces

Hi Experts, We are facing some while loading the "csv" file to target table.Some of the records are having values as : Account number,Name,Address "123","XYZ","302 Street,Washington,US" "456","PQR"," 3233 Some Street, Washington,US" In the above file instead reading only two records it... (11 Replies)
Discussion started by: Amey Joshi
11 Replies

5. UNIX for Dummies Questions & Answers

Replacing a character in a line

Hi All I want to replace a character in a line, but position will be different form one iteration to another. So i m keeping the position i a variable. I am trying with following code pos=3 echo "Hello World, Good Morning" | sed 's/\(.\{$pos\}\)./\1Y/' But its not working, Can you... (2 Replies)
Discussion started by: Usha Shastri
2 Replies

6. UNIX for Dummies Questions & Answers

replacing a character

Hi All, contents of my file is like this: xxx xxx1 N N N 0 yyy yyy1 Y N N 0 i want to replace 1st N of xxx xxx1 N N N 0 line with Y. i. e i want the output like this: xxx xxx1 Y N N 0 how can i do this? please help. Thanks (8 Replies)
Discussion started by: Usha Shastri
8 Replies

7. UNIX for Dummies Questions & Answers

replacing 1 character with many : tr

Hi All, I would like to know how, iff at all we can, we may use the 'tr' command to replace a single character with multiple characters. eg: if i have a string valued "him", how can i use 'tr' to replace 'i' with "oo" to make "hoom". Just replacing a single character by many. tried:-... (16 Replies)
Discussion started by: hkansal
16 Replies

8. Shell Programming and Scripting

replacing a character with another

hi i have a file and reading line by line, i need to replace 8-15 and 18-27 charaters with character 'x'. Eg: satyasatxxxxxxxsatxxxxxxxxxtyasatyasatyasatyasatyasatya please help thanks Satya (1 Reply)
Discussion started by: Satyak
1 Replies

9. Linux

replacing enter character in LINUX

Hi 1) I need to replace an "enter" character with another character. I thought it should be like this (E.G) replace all stirngs "LIAV"+enter with kokokoko: :1,$s/LIAV^M/kokokoko/g but it dose not work. 2) Also dose nayone know how to replace wildcards? for... (3 Replies)
Discussion started by: liav
3 Replies

10. UNIX for Dummies Questions & Answers

Replacing the last character

Hi , I need to change the last character of the line: ie: input file: (raj, muthu, mani, Output: (raj, muthu, mani); so i need to change the last comma by the closing braces so help me out in the issue. Thanks in advance. (2 Replies)
Discussion started by: ithirak17
2 Replies
Login or Register to Ask a Question