if (open FH, "<", $file) { # read it and do stuff open FH, ">", $file or die "Failed: $! trying to re-open $file\n"; } else { # do stuff open FH, ">", $file or die "Failed: $! trying to create new $file\n"; }