On Mon, Apr 03, 2000 at 06:14:51PM +1000, Matthew Dalton wrote:
>
> #!/usr/bin/perl
>
> while (<STDIN>)
> {
> s#http://209\.155\.163\.97/#http://www\.pexchange\.com/#g;
> print;
> }
>
> --
>
> run it like:
> $ cat small_file | ./filter_above > new_small_file
mmmm... Perl... ;)
In this case, i'd probably just do something like this:
perl -i -pwe 's!http://209\.155\.163\.97!http://www\.pexchange\.com!g' filename
> To do all of the files in all of the subdirectories, you could probably
> write a shell script to do it. Two ways I can think of would be to use
> find to get a list of all of the files, and run them through this
> script...
>
> #!/bin/sh
>
> for file in `find .`; do
> cat $file | ./filter > $file.new
> rm -f $file
> mv $file.new $file
> done
If you want to do something really ... interesting: (all one line)
find . \! -type d -exec perl -i -pwe 's!http://209\.155\.163\.97!http://www\.pexchange\.com!g' {} \;
> Warning!!! Please test this on non-important data before running it on
> your 30000 files. I'm claim no responsibility for what it does to your
> system.
I'll second that. i _think_ that my line above will work, but a backup
copy never hurt anyone.
--
finger for GPG public key.
Attachment:
pgpPGV3_aLGjv.pgp
Description: PGP signature