CCBFile|NDM|/u1/cdunix/work/blprobr1|S${TODAY}.00?|${TODAY}CCB
####
#!/apps/bin/perl -w
$TODAY = "20030518";
$config_file = "myconfig.cfg";
open (CONFIG, "$config_file") || die "Can't open $config_file for reading : $!\n";
while ( defined ($_ = ) )
{
my($job,$type,$dir,$file,$pattern) = split(/\|/,$_);
my $val1 = file_eval($file);
my $val2 = file_eval($pattern);
print "val1 : $val1\n";
print "val2 : $val2\n";
}
close(CONFIG);
sub file_eval
{
my ($value) = @_;
$match = '([0-9A-Za-z._%?#]*)(\$\{\w+\})([0-9A-Za-z._%?#]*)';
if ( $value =~ /$match/g )
{
print "\nvalue is : $value\n";
($p1,$p2,$p3) = /$match/;
print "\n p1 is $p1\n";
print "\n p2 is $p2\n";
print "\n p3 is $p3\n";
$px = eval "$p2";
$filex = $p1 . $px . $p3;
print "\n filex is $filex\n";
}
return $filex;
}
####
value is : S${TODAY}.00?
p1 is S
p2 is ${TODAY}
p3 is .00?
filex is S20030518.00?
value is : ${TODAY}CCB
p1 is S
p2 is ${TODAY}
p3 is .00?
filex is S20030518.00?
val1 : S20030518.00?
val2 : S20030518.00? <- should be 20030518CCB