#!/usr/bin/perl my $dirpath = $ARGV[1]; $dirpath ||= 'templates'; &process_dir($dirpath); sub process_dir { my $dirpath = shift @_; opendir DIR, $dirpath || die "can't open dir $dirpath for reading:$!"; my @entries = readdir DIR; closedir DIR; for $entry(@entries){ my $path = "$dirpath/$entry"; if (-d $path && $entry !~ /^\./){ &process_dir($path); } elsif ($entry !~ /^\./){ print "Processing path $path\n"; `perl -ibak -pe 's|\<\%(.*)\%\>||g' $path` } } }