2007-12-10

Recursive find and replace

use strict;
use warnings;
use Cwd;

use File::Find;

my $search_pattern='search_pattern' ;
my $replace_pattern = 'replace_pattern';

# my $replace_pattern = 'pla';
my $file_pattern ='.*?html';
find(\&d, cwd);

sub d {
my $file = $File::Find::name;
$file =~ s,/,\\,g;

return unless -f $file;
return unless $file =~ /$file_pattern/;
use Tie::File ;

tie my @file_array , 'Tie::File', $file , memory => 100_000_000 or die "I cannot find the $file" ;
foreach my $line (@file_array) #foreach line of the file
{
$line =~ s/$search_pattern/$replace_pattern/igo ;
}
print $file . " done !!! \n" ;
untie @file_array ;

}

#sources copy pasted fro

No comments:

Post a Comment

- the first minus - Comments have to be moderated because of the spammers
- the second minus - I am very lazy at moderating comments ... hardly find time ...
- the third minus - Short links are no good for security ...
- The REAL PLUS : Any critic and positive feedback is better than none, so your comments will be published sooner or later !!!!

Search This Blog

Loading...

Labels

perl (39) Cheat Sheet (25) how-to (24) windows (13) oracle (12) sql server 2008 (12) Unix (11) linux (11) cmd windows batch (10) mssql (10) sql (10) cmd (9) script (9) textpad (9) sql server 2005 (8) code generation (7) cygwin (7) meta data mssql (7) metadata (7) Informatica (5) cheatsheet (5) energy (5) excel (5) netezza (5) tsql (5) utilities (5) bash (4) future (4) generic (4) html (4) perl modules (4) programs (4) settings (4) sh (4) поуки (4) принципи (4) Focus Fusion (3) Solaris (3) cool programs (3) development (3) economy (3) example (3) freeware (3) fusion (3) morphus (3) mssql 2005 (3) nuclear (3) parse (3) sftp (3) shortcuts (3) sofware development (3) sqlplus (3) table (3) vim (3) .Net (2) C# (2) China (2) GUI (2) Google (2) GoogleCL (2) Solaris Unix (2) ascii (2) awk (2) batch (2) cas (2) code2html (2) columns (2) configuration (2) conversion (2) duplicates (2) export (2) file (2) free programs (2) google code (2) logging (2) mssql 2008 (2) mysql (2) next big future (2) nsis (2) nz (2) ora (2) prediction (2) publish (2) python (2) release management (2) report (2) security (2) single-click (2) source (2) sqlserver 2005 (2) sqlserver 2008 (2) ssh (2) template (2) tools (2) vba (2) video (2) xlt (2) xml (2) youtube videos (2) *nix (1) .vimrc (1) BSD license (1) Bulgaria (1) Dallas (1) Database role (1) Dense plasma focus (1) Deployment (1) ERP (1) ExcelToHtml (1) GD (1) GDP (1) HP-UX (1) Hosting (1) INC (1) IT general (1) IZarc (1) Java Web Start (1) Khan Academy (1) ListBox (1) MIT HYDROGEN VIRUS (1) OO (1) Obama (1) PowerShell (1) Run-time (1) SDL (1) SIWA (1) SOX (1) Services (1) Stacks (1) SubSonic (1) TED (1) abstractions (1) apache (1) apache 2.2 (1) application life cycle (1) architecture (1) archive (1) arguments (1) avatar (1) backup (1) bash stub (1) bin (1) biofuels (1) biology (1) books (1) browser (1) bubblesort (1) bugs (1) byte (1) cas_sql_dev (1) chennai (1) class (1) claut (1) cmdow (1) code generation sqlserver (1) command (1) command line (1) conf (1) confluence (1) console (1) convert (1) copy-paste (1) csv (1) ctags (1) current local time (1) data (1) data types (1) debt (1) diagram (1) digital (1) documentation (1) dos (1) dubai (1) e-cars (1) electric cars (1) electricity (1) emulate (1) errors (1) exponents (1) export workflow (1) extract (1) fast export (1) fexp (1) file extension (1) file permissions (1) findtag (1) firewall (1) for loop (1) functions (1) fusion research (1) german (1) google cli (1) google command line interface (1) gpg (1) head (1) helsinki (1) history (1) hop or flop (1) host-independant (1) ideas (1) image (1) install (1) java (1) jump to (1) keyboard shortcuts (1) ksh (1) level (1) london (1) make (1) me (1) metacolumn (1) metadata functions (1) metaphonre (1) method (1) model (1) movie (1) n900 (1) nano (1) neteza (1) non-password (1) nord pol (1) number formatting (1) on-lier (1) one-liners (1) one-to-many (1) oneliners (1) open (1) open source (1) openrowset (1) outlook (1) parser (1) password (1) paths (1) permissions (1) php (1) picasa (1) platform (1) ppm (1) predictions (1) prices (1) principles (1) productivity (1) project (1) prompt (1) proxy account (1) public private key (1) publishing (1) putty (1) qt (1) read file (1) registry (1) relationship (1) repository (1) rm (1) scp (1) scripts (1) sed (1) sendEmail (1) sh stub (1) silicon (1) smtp (1) software procurement (1) sofware (1) sort (1) sql script (1) sql_dev (1) sqlcmd (1) sqlite (1) sqlite3 (1) src (1) sshd (1) stackoverflow (1) stored procedure (1) stub (1) stupidity (1) subroutines (1) svn (1) sysinternals (1) tail (1) tar (1) temp table (1) templates (1) teradata (1) terminal (1) test (1) testing (1) theory (1) thorium (1) time (1) tip (1) title (1) tool (1) url (1) urls (1) user (1) utility (1) utils (1) vb (1) vimeo (1) warsaw (1) wiki (1) wikipedia (1) window (1) windows 7 (1) windows programs (1) windows reinstall (1) wisdoms (1) workflow (1) worth-reading (1) wrapper (1) xp_cmdshell (1) xslt (1) youtube (1)

Blog Archive

Translate with Google Translate

My Blog List

Video Bar

Loading...