sed to remove


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting sed to remove
# 1  
Old 05-17-2010
sed to remove

Hello
I have a file with records...The records have several lines and have start and end born...
This is a template:

Code:
000000001 LDR   L ^^^^^nam^^2200325Iia^45e0
000000001 022   L $$a0081-3397
000000001 041   L $$aSPA
000000001 088   L $$aJ.E.N. 551
000000001 090   L $$aINFORMES JEN
000000001 100   L $$aROMERO, L.
000000001 650   L $$aGeneral y miscelánea0
000000001 650   L $$aGeneral and miscellaneus0
000000001 FMT   L BK

LDR is start born and BK is end born...As you see, in this record I have a field 650 with L $$a string and a 0 at the end...I would liek to remove the zero in this file (34000 records) but only for the foeld 650...
Some one knows how to do?

Thanks a lot
# 2  
Old 05-17-2010
This one will simply remove the trailing zero from every row/line, which has 650 in it's second column/field:
Code:
while read line; do
if [ $(echo $line | awk '{print $2}') = "650" ]; then
echo $line | sed 's/[034]$//'
else
echo $line
fi
done <inputfile

Is this an option for you? If not please explain why.

Last edited by pseudocoder; 05-17-2010 at 04:39 PM.. Reason: update due to enhanced requirement
# 3  
Old 05-17-2010
or try:
Code:
awk '$2==650{sub(/0$/,"")}1' infile

# 4  
Old 05-17-2010
MySQL

Code:
sed 's/\(.*650.*\)0$/\1/' file

# 5  
Old 05-17-2010
This would work too:
Code:
sed '/650/s/0$//' infile

But sed is less precise in this case than awk, since 650 can be anywhere on the line and not necessarily in the second column.
# 6  
Old 05-17-2010
Quote:
Originally Posted by ygemici
Code:
sed 's/\(.*650.*\)0$/\1/' file

This one is pretty "dangerous", since it will remove the trailing zero from _any_ line with 650 _anywhere_ in it. Smilie
# 7  
Old 05-17-2010
Hello
Good thanks a lot.
I see that I have some rows with "3" or "4" at the end...
No only "0", is it possible to tell script to remove all the 0 or 3 or 4 ?

Thanks a lot in advance
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Remove space with sed

Hello Folks , myfile contains 1000000 records as follows: logver=56 idseq=63256 itime=1111 devid=TG-40 devname=PUI-C2 vd=USER date=2019_01_10 time=18:39:49 logid="000013" type="traffic" subtype="forward" level="notice" eventtime=134 srcip=1.1.1.1 srcport=1 srcintf="XYX-CORE.01"... (3 Replies)
Discussion started by: arm
3 Replies

2. Shell Programming and Scripting

sed remove everything between two string

Hi all, I have this input: "203324780",,"89321213261247090146","VfdsD150","0D","fd3221","V0343","aaa","Direkt","fsa","2015.02.27","39833,54454,21214",,,"fd","NORMAL","D","10fd","1243 Flotta","HiĂĄnytalan","2013.02.25",,"2013.02.25","2013.02.24","2013.02.28",,"SajĂĄt... (4 Replies)
Discussion started by: snayper
4 Replies

3. UNIX for Dummies Questions & Answers

How to remove certain lines using sed?

Hi I have the following kind of line sin my file . print ' this is first'. print ' this is firs and next ' ' line continuous '. -- this is entire print line. print ' this is first and next ' ' line continuous and' 'still there now over'. -- this 3lines together a single print line. ... (5 Replies)
Discussion started by: Sivajee
5 Replies

4. Shell Programming and Scripting

Need to remove a character using sed

Hi All, I have output like this below ldprod/03 ldprod/02 ldprod/01 ldprod/00 ldnprod/ ldnprod/030 I want only remove all character including / ldprod ldprod ldprod ldprod ldprod ldnprod (8 Replies)
Discussion started by: ranjancom2000
8 Replies

5. Shell Programming and Scripting

Remove the Characters '[' and ']' with Sed

Hi, I am new to Sed and would like to know if it is possible to remove the characters . I have a couple of files with a keyword and would like to remove the substring. I am Using sed s/// but Its not working Thanks for your Support Andrew Borg (2 Replies)
Discussion started by: andrewborg
2 Replies

6. Shell Programming and Scripting

using sed to remove lines

Can somebody explain why my sed command is not working. I do the folloinwg: Generates a binary file to /tmp/x1.out /usr/lib/sa/sa2 -s 4:00 -e 8:00 -i 3600 -A -o /tmp/x1.out decodes the file (no problem so far) sar -f /tmp/x1.out When I do this it does not appear to delete the... (4 Replies)
Discussion started by: BeefStu
4 Replies

7. Shell Programming and Scripting

sed over writes my original file (using sed to remove leading spaces)

Hello and thx for reading this I'm using sed to remove only the leading spaces in a file bash-280R# cat foofile some text some text some text some text some text bash-280R# bash-280R# sed 's/^ *//' foofile > foofile.use bash-280R# cat foofile.use some text some text some text... (6 Replies)
Discussion started by: laser
6 Replies

8. Shell Programming and Scripting

sed to remove character ['

I have a huge file where the each column has data in the format: . I want to remove the from each value. How do I do it with sed? thanks (2 Replies)
Discussion started by: manishabh
2 Replies

9. Shell Programming and Scripting

sed remove

anyone out there knows how to remove pattern <random string> use sed? (6 Replies)
Discussion started by: jamwong
6 Replies

10. Shell Programming and Scripting

how to remove ^@ from a file using sed...or anything

i tried the following:- sed -e file 's/^@//g' > temp also tried sed -e file 's///g' > temp nothing happened....can someone please tell me wht is wrong??? also someinformation abt the character "^@"(it is ONLY ONE character and NOT TWO characters) thanx in advance.. (13 Replies)
Discussion started by: sayonm
13 Replies
Login or Register to Ask a Question