path( $in )->move( $bak ); #Creates a copy of the original file #### use POSIX; my $date = POSIX::strftime( '%Y-%m-%d', localtime ); print "$date\n"; __END__ 2014-09-04 #### my $dateNow = POSIX::strftime( '%Y-%m-%d', localtime ); my $backupSuffix = $dateNow . ".bak"; ... my $backupFile = "$file-$backupSuffix"; Replace( $file, $backupFile ); #### $ymdToday ... ... $backupFile = "$file-$ymdToday.bak"; #### ## Replace( $inputFilename, $backupFilename ); sub Replace { my( $inputFilename, $backupFilename ) = @_; ... ## FixXmlEntities ( $inputFilename, $backupFilename ); sub FixXmlEntities { my( $inputFilename, $backupFilename ) = @_; ... ## FixXmlEntities ( $inputFilename, $backupFilename ); sub FixXmlEntities { my( $input, $backup ) = @_; ... ## FixUnencodedXmlEntities ( $inputFilename, $backupFilename ); ## FixStrayXmlEntities ( $inputFilename, $backupFilename ); sub FixStrayXmlEntities { my( $infile, $bakfile ) = @_; ... }