use POSIX; my $filename=POSIX::strftime("%Y%m%d",localtime(time()))."_foo.dat"; open F,">$filename" or die "error opening $filename : $!"; ...