#!/usr/bin/perl -w use strict; my @array = glob("*.htm"); for my $i(@array) { open(FH, "$i"); open(NH, ">tmp"); while() { $_ =~ s/string1/string2/g; print NH $_; } close(NH); close(FH); rename("tmp", $i); }