#!/usr/bin/perl # vi:ts=4 sw=4 et: use strict; use warnings; # pfad my $dir = '/path/to/'; # dateien my @ff = ( 'file.jpl', '---file2.jpl', ); # erstelle ein array mit absol. pfadangaben my @files = map { $dir . $_ } @ff; # wie lautet die unerwuenschte prefix? my $what = '---'; FILE: for ( @files ) { # length nur einmal aufrufen my $length = length( $dir ); # prefix gefunden? if ( index( $_, $what ) == $length ) { my $new = $_; substr( $new, $length, length( $what ), '' ); if ( rename( $_, $new ) ) { $_ = $new; } else { warn "rename( $_, $new ) failed: $!\n"; # tu was im Fehlerfall next FILE; } } # weiterverarbeiten von $_ print $_, $/; }