#!/usr/bin/perl -w use strict; #### use warnings; #### opendir(THISDIR,"e:\\perl\\comics\\"); my @comics=readdir(THISDIR); close(THISDIR); #### my @comics=glob 'e:/perl/comics/*'; # or 'e:/perl/comics/*.png', according to your description #### foreach (reverse(@comics)) { #### my ($name,$ext)=split(/\./,$_); #### ls -1 *.png | perl -lne '$o=$_; s/(\d+)/sprintf "%03d", $1/e; rename $o, $_'