Removing lines - Part II
Hi,
I've been doing what i've been told.
Searching google for help.
I want to replace this line:
<h4 class="post-title"><a href="http://tuxvermelho.blogspot.com/2006/08/bourne-shell.html">Bourne Shell</a></h4>
for:
<!--
i do:
# sed -e 's/<h4 class="post-title"><a href="http://tuxvermelho.blogspot.com/2006/08/bourne-shell.html">Bourne Shell</a></h4>/<!--/' < index.html
but get an error:
sed: -e expression #1, char 42: Unknown option to `s
Can someone help me, please ?
Any help would be appreciated.
Warm Regards
Signature · 5 lines
:wq! Mário Gamito - To unsubscribe from this list: send the line "unsubscribe linux-admin" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
Quoted 5 lines · Mário Gamito
i do:
# sed -e 's/<h4 class="post-title"><a href="http://tuxvermelho.blogspot.com/2006/08/bourne- shell.html">Bourne Shell</a></h4>/<!--/' < index.html
well you should escape the '/', like:
sed -e 's/<h4 class="post-title"><a href="http\:\/\/ tuxvermelho.blogspot.com\/2006\/08\/bourne-shell.html">Bourne Shell<\/ a><\/h4>/<!--/'
works for me. [1]
you could also substitute '/' with '$':
sed -e 's$<h4 class="post-title"><a href="http\:// tuxvermelho.blogspot.com/2006/08/bourne-shell.html">Bourne Shell</a></ h4>$<!--$'
then you don't need to escape anything except there would be a '$' in the text....
hth
florian
[1]: $ sed --version
GNU sed version 4.1.4
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE,
to the extent permitted by law.
Signature · 11 lines
Florian Klien student of Telematics, tutor for 'Introduction to Structured Programming' and 'Software Development Practical Exercises' at Graz university of technology. "When in doubt, use brute force.", Ken Thompson - To unsubscribe from this list: send the line "unsubscribe linux-admin" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
Mário,
I'll try to save you some time here. The script below should do exactly what you asked for help with. However, as you can see, sed is a ``write only'' language. If you're going to be maintaining this code, I would suggest rewriting it in something a bit more readable such as awk, or perl.
-------- START OF FILE --------
\|<h4 class="post-title"><a href="http://tuxvermelho\.blogspot\.com/2006/08/bourne-shell.html">Bourne Shell</a></h4>| b remove
: next
P
d
: remove
s|<h4 class="post-title"><a href="http://tuxvermelho\.blogspot\.com/2006/08/bourne-shell.html">Bourne Shell</a></h4>.*<p><a href="http://domain.com/2006/08/bourne-shell.html">Sáb, 14 Abr 2007 12:31:07</a></p>|| t next
N
b remove
-------- END OF FILE --------
If you want to fit the script on one line, replace the line feeds with semicolons (``;'').
Doug Knight
P.S. I would advise against making a habit of using ``$'' or any other character that has special meanings in regular expressions as a substitution delimiter, unless you enjoy driving yourself crazy when things don't work the way you expect them to.
Quoted 36 lines · Florian Klien
Quoted 4 lines · Mário Gamito
i do:
# sed -e 's/<h4 class="post-title"><a href="http://tuxvermelho.blogspot.com/2006/08/bourne-shell.html">Bourne Shell</a></h4>/<!--/' < index.htmlwell you should escape the '/', like:
sed -e 's/<h4 class="post-title"><a href="http\:\/\/tuxvermelho.blogspot.com\/2006\/08\/bourne-shell.html">Bourne Shell<\/a><\/h4>/<!--/'works for me. [1]
you could also substitute '/' with '$':
sed -e 's$<h4 class="post-title"><a href="http\://tuxvermelho.blogspot.com/2006/08/bourne-shell.html">Bourne Shell</a></h4>$<!--$'then you don't need to escape anything except there would be a '$' in the text....
hth
florian
[1]: $ sed --version
GNU sed version 4.1.4
Copyright (C) 2003 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, to the extent permitted by law.
--Florian Klien
student of Telematics, tutor for 'Introduction to Structured Programming' and 'Software Development Practical Exercises'
at Graz university of technology.
"When in doubt, use brute force.", Ken Thompson
Quoted 4 lines
-
To unsubscribe from this list: send the line "unsubscribe linux-admin" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
-
To unsubscribe from this list: send the line "unsubscribe linux-admin" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html