#!/usr/bin/perl $dir = "/home/my/files" ; chdir $dir or die "$!"; opendir(DIR,$dir ) or die "$!"; $i = 1; @files = grep { !/^\./ } readdir(DIR); foreach (@files) { $new = $_; $new =~ s/$new/sprintf ("%03d-%s",$i,$_)/e; rename $_,$new; $i++; }