sub Speicherung_Testumgebung { my %Speicherung_Hashes = %{ $_[ 0 ] }; foreach my $name ( sort keys %Speicherung_Hashes ) { # printf "%-8s %s\n" , $name , $Speicherung_Hashes{ $name }; print "Werte des Hashes : $Speicherung_Hashes{ $name }" , "\n"; my $file = "test.txt"; local *CF; open( CF , '<'. $file ) or die "Open $file: $!"; read( CF, my $data , -s $file ); close( CF ); my @lines = split( /\015\012|\012|\015/ , $data ); my $config = { }; my $Zaehler_Zeile = 0; foreach my $line( @lines ) { $Zaehler_Zeile++; next if( $line =~ /^\s*#/ ); next if( $line !~ /^\s*\S+\s*=.*$/ ); my ( $key , $value ) = split( /=/ , $line , 2 ); # Remove whitespaces at the beginning and at the end $key =~ s/^\s+//g; $key =~ s/\s+$//g; $value =~ s/^\s+//g; $value =~ s/\s+$//g; # print "Keys : $key" , "\n"; # print "Values : $value" , "\n"; if( $key eq $name ) { print "Treffer" , "\n"; print "\n"; print "Ersetze Werte ..." , "\n"; my $datei = "test.txt"; my $quellwort = "$value"; my $zielwort = "$Speicherung_Hashes{ $name }"; print "Vorhandene Variable : $value" , "\n"; print "Ersetzende Variable : $Speicherung_Hashes{ $name }" , "\n"; my @Zeilen; open( DATEI , "$datei" ); while ( ) { push @Zeilen, $_; } close(DATEI); foreach ( @Zeilen ) { $_ =~ s/$quellwort/$zielwort/; } open(DATEI, ">$datei" ); foreach ( @Zeilen ) { print DATEI "$_"; } close(DATEI); } } } }