#!/usr/bin/perl -w    # Dateiname ermitteln    $dateiname = $ARGV[0];  # der Skriptname steht in $0    @zeilen = (); # Hashtabelle erstellen und umkehren %my_addresses_hash = ( "armin.mueller" => "amueller", "thorsten.mustermann" => "tmustermann", "klaus.meier" => "kmeier", ); %reverse_my_addresses_hash = reverse %my_addresses_hash; @reverse_my_addresses_array = %reverse_my_addresses_hash; #Die zu suchenden/ersetzenden Werte werden getrennt @search = keys %reverse_my_addresses_hash; @replace = values %reverse_my_addresses_hash;    # Datei lesen          open (DATA, "$dateiname") || die "konnte die Datei nicht oeffnen\n";          #Solange noch etwas in der Datei steht, fuehre sed-Aktion aus          while ()          {          s/$search/$replace/g;          ##Die geaenderten Dateien werden in einem neuen Array gespeichert.          push (@content, $_);          }          #Die Datei wird nach der Bearbeitung geschlossen.          close (DATA);          #Die Datei wird zum schreiben geoeffnet          open (WRITE, ">$dateiname") || die "konnte Datei nicht beschreiben\n";          #Die Datei wird mit dem Inhalt des Arrays ueberschrieben.          print WRITE @content;          ##die fertige Datei wird geschlossen.          close (WRITE);