my $valuFileName="ABCD_060824010101.DAT"; my $distFileName="EFGH_060824010101.DAT"; my $tranFileName="HIJK_060824010101.DAT"; my $tmp_file="/tmp/testtmp.tmp"; my ($busnDate) = $valuFileName =~ /_(\d{12})/; open(TMP_FILE, ">", $tmp_file) or die "failed to write '$tmp_file': $!\n"; print TMP_FILE join("\n", $valuFileName, $distFileName, $tranFileName, $busnDate); close TMP_FILE;