【求助】读取文件内容前给全局变量赋值,读取文件内容时全局变量值为替换成功
Hi 各位大神, 我在使用perl编写脚本的过程中,遇到一个问题,一直没找到解决办法,请帮忙寻找解决办法。
脚本包含程序正文文件和以.cfg为结尾的文件,在.cfg文件中定义了很多block(block的名字定位BLOCK1),里面包含全局变量如VAR1,VAR2.....,程序正文代码在读取.cfg文件的BLOCK1的内容前,先对全局变量进行了赋值,如VAR1=11; VAR2=22;.......然后再读取BLOCK1中的内容,并将相应内容写到一个新的文件里。读取BLOCK1时使用语句my $conf = eval '$::D1'.'{BLOCK1}';然后将读到的内容写到新的文件file1中,
open(OUTFILE, ">file1");
print OUTFILE ("$conf");
close (OUTFILE);
结果看到file1中的内容为BLOCK1的内容,但未将全局变量VAR1,VAR2.......替换为具体的数值输出到新的数值,试着将.cfg文件中全局变量给为(VAR1), $::VAR1之后都不能实现我的目的,请大神赐教怎么解决。