Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Dec 2008 14:18:41 -0800
From:      Gary Kline <kline@thought.org>
To:        Roland Smith <rsmith@xs4all.nl>
Cc:        FreeBSD Mailing List <freebsd-questions@freebsd.org>
Subject:   Re: well, blew it... sed or perl q again.
Message-ID:  <20081230221841.GA46220@thought.org>
In-Reply-To: <20081230211642.GA67769@slackbox.xs4all.nl>
References:  <20081230193111.GA32641@thought.org> <20081230201623.GB65659@slackbox.xs4all.nl> <20081230205131.GA34211@thought.org> <20081230211642.GA67769@slackbox.xs4all.nl>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Dec 30, 2008 at 10:16:42PM +0100, Roland Smith wrote:
> 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).  


	i have, thanks; getting more clues... .
> 
> This will disregard the entire line with a URI in it. Is this really
> what you want?

	exactly; anything that has http://WHATEVER i do not want to
	copy.  the slight gotcha is if the </A> LIne // tag is on the
	folowing line.  but in most cases the whole anchor,
	close-anchor of these junk lines is on one line.   ...i know
	a closing tag does nothing; it's just sloppy markup.


> 
> 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 

	thanks much to you and giorgos.  i thought about doing this
	by-hand, but only for about 0.01s!

	gary


> 
> 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)



-- 
 Gary Kline  kline@thought.org  http://www.thought.org  Public Service Unix
        http://jottings.thought.org   http://transfinite.thought.org
    The 2.17a release of Jottings: http://jottings.thought.org/index.php




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20081230221841.GA46220>