$output = $lineValue[0].".cfg"; # begin untested code use File::Basename; # May be moved to top of script my $output_dir = File::Basename::dirname $output; if ( not ( -w $output_dir ) ) { die "No permission to write to directory $output_dir\n"; } elsif ( not ( -w $output ) ) { die "No permission to write to file $output\n"; } # end untested code open(my $fh2, ">", $output) or die $!;