well, blew it... sed or perl q again.
Roland Smith
rsmith at xs4all.nl
Tue Dec 30 21:16:46 UTC 2008
On Tue, Dec 30, 2008 at 12:51:31PM -0800, Gary Kline wrote:
> On Tue, Dec 30, 2008 at 09:16:23PM +0100, Roland Smith wrote:
> > On Tue, Dec 30, 2008 at 11:31:14AM -0800, Gary Kline wrote:
> > > The problem is that there are many, _many_ embedded
> > > "<A HREF="http://whatever> Site</A> in my hundreds, or
> > > thousands, or files. I only want to delete the
> > > "http://<junkfoo.com>" lines, _not_ the other Href links.
> > >
> > > Which would be best to use, given that a backup is critical?
> > > sed or perl?
> >
> > IMHO, perl with the -i option to do in-place editing with backups. You
> > could also use the -p option to loop over files. See perlrun(1).
> >
> > Roland
>
>
> All right, then is this the right syntax. In other words, do
> I need the double quotes to match the "http:" string?
>
> perl -pi.bak -e 'print unless "/m/http:/" || eof; close ARGV if eof' *
You don't need the quotes (if the command doesn't contain anything that
your shell would eat/misuse/replace). See perlop(1).
This will disregard the entire line with a URI in it. Is this really
what you want?
Copy some of the files you want to scrub to a separate directory, and
run tests to see if your script works:
mkdir mytest; cp foo mytest/; cd mytest; perl -pi.bak ../scrub.pl foo
diff -u foo foo.bak
Roland
--
R.F.Smith http://www.xs4all.nl/~rsmith/
[plain text _non-HTML_ PGP/GnuPG encrypted/signed email much appreciated]
pgp: 1A2B 477F 9970 BA3C 2914 B7CE 1277 EFB0 C321 A725 (KeyID: C321A725)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-questions/attachments/20081230/57d9a033/attachment.pgp
More information about the freebsd-questions
mailing list