in reply to Simple file editing problems

in nearly every die () call: print out the $! scalar, which holds the "true" system error message.

please put the following two lines above your scripts:
use strict; use warnings;
explanation can be found here

this code example works for me:
use strict; use warnings; open (FILE, "<test.data") or die "open: $!"; my @file_contents = <FILE>; close (FILE); @file_contents = map {s/stefan/kabel/g; $_;} @file_contents; open (FILE, ">test.data") or die "open 2: $!"; print FILE $_ foreach (@file_contents); close (FILE);
not the nicest code, but who cares.