【发布时间】:2012-11-05 12:31:08
【问题描述】:
我正在用 Perl 编写一个用于代码编译的跨平台构建脚本。
在Windows下,我需要执行vsvars32.bat来设置环境变量:
sub set_win_env {
#MSVC version 9.0 is installed
$VS90COMNTOOLS = $ENV{'VS90COMNTOOLS'};
$VS90COMNTOOLS .= "vsvars32.bat"
if($VS90COMNTOOLS ne "") {
system("$VS90COMNTOOLS");
}
}
通过执行批处理文件设置的环境变量会丢失,因为解释器会生成另一个 shell 来执行批处理文件。
如何在父 Perl 脚本中导入这些变量?
【问题讨论】:
-
顺便说一句,变量与常量字符串连接后如何成为空字符串?条件始终为真。
-
是的,没用的检查...最初我是在检查后附加变量... :)
标签: perl environment-variables