G
George Mpouras
Do you have any idea how to fix the warning
Name "main::FH" used only once: possible typo at C:\work\Files\test.pl
at the following code ?
#!/usr/bin/perl
use strict;
use warnings;
my $output_dir = '/tmp';
my %File = (
'mc' => { '12' => '', '13' => '', },
'mp' => { '12' => '', '13' => '', },
);
foreach my $key1 (keys %File)
{
foreach my $key2 (keys %{$File{$key1}})
{
$File{$key1}{$key2} = { *FH => \"$key1,$key2" , 'FILE' =>
"$output_dir/$key1,$key2" };
open $File{$key1}{$key2}{'FH'}, '>', $File{$key1}{$key2}{'FILE'} or die
"Could not open file \"$File{$key1}{$key2}{'FILE'}\" because \"$^E\"\n";
}
}
# Write something
print {$File{nc}{12}{FH}} "test nc 12\n";
print {$File{alp}{14}{FH}} "test alp 14\n";
# Close the filehandlers
foreach my $key1 (keys %File) {
foreach my $key2 (keys %{$File{$key1}}) {
close $File{$key1}{$key2}{'FH'} or die "Could not close file
\"$File{$key1}{$key2}{'FILE'}\" because \"$^E\"\n" }}
Name "main::FH" used only once: possible typo at C:\work\Files\test.pl
at the following code ?
#!/usr/bin/perl
use strict;
use warnings;
my $output_dir = '/tmp';
my %File = (
'mc' => { '12' => '', '13' => '', },
'mp' => { '12' => '', '13' => '', },
);
foreach my $key1 (keys %File)
{
foreach my $key2 (keys %{$File{$key1}})
{
$File{$key1}{$key2} = { *FH => \"$key1,$key2" , 'FILE' =>
"$output_dir/$key1,$key2" };
open $File{$key1}{$key2}{'FH'}, '>', $File{$key1}{$key2}{'FILE'} or die
"Could not open file \"$File{$key1}{$key2}{'FILE'}\" because \"$^E\"\n";
}
}
# Write something
print {$File{nc}{12}{FH}} "test nc 12\n";
print {$File{alp}{14}{FH}} "test alp 14\n";
# Close the filehandlers
foreach my $key1 (keys %File) {
foreach my $key2 (keys %{$File{$key1}}) {
close $File{$key1}{$key2}{'FH'} or die "Could not close file
\"$File{$key1}{$key2}{'FILE'}\" because \"$^E\"\n" }}