【发布时间】:2014-06-05 16:37:17
【问题描述】:
我正在尝试使用环境变量来指向一个文件,通过一个子程序运行它并将它与一个变量相关联。我用 Windows 管理它,但我无法让语法适用于 Linux..
这就是我所拥有的:
my $config = read_config("$ENV{APP_HOME}/config/APP-linux.cfg");
我的脚本在到达此行并出现错误时死亡:
Use of uninitialized value $ENV{"APP_HOME"} in concatenation (.) or string at ./XXXXX.pl
APP_HOME 被定义为环境变量(使用 set 确认)。我做错了什么?
【问题讨论】:
-
echo $APP_HOME从你的 shell 返回正确的值吗? -
@HunterMcMillen 它没有...它给出:名称“main::APP_HOME”仅使用一次:./test.pl 第 8 行可能存在错字。无法在./test.pl 第 8 行的未定义值。
-
你是刚刚设置还是导出?导出 APP_HOME=MY_VALUE
-
这个显示什么:
perl -e 'print "$ENV{APP_HOME}\n";' -
检查您的环境变量的完整列表:
perl -MData::Dumper -e 'print Dumper \%ENV'
标签: linux perl environment-variables