方法1:Perl的正则表达式的奇怪行为
$C_HOME = "$ENV{EO_HOME}\\common\\";
print $C_HOME;
给C:\工作\ System11R1 \ COMMON \
即环境变量是越来越扩大。
方法2:
解析属性文件具有 C_HOME = $ ENV {EO_HOME} \共同\
while(<IN>) {
if(m/(.*)\s+=\s+(.*)/)
{
$o{$1}=$2;
}
}
$C_HOME = $o{"C_HOME"};
print $C_HOME;
这给出$ ENV {EO_HOME}的输出\共同\
即环境变量没有得到扩展。
如何确保在第二种情况下环境变量也得到了扩展。必须
什么是'$ O',到底是什么?你在哪里初始化它(通过“我的” - 当然,你这样做是因为你**使用'strict'和'warnings'编译指示,右)?尝试使用'Data :: Dumper'来查看'$ o'包含的内容。 – 2012-07-24 12:53:16