Perl $ENV 不访问环境变量

Perl $ENV not accessing environment variable

这是一个 WSL bash 会话,我在其中尝试访问 perl one 衬里中的环境变量:

$ ln='Hello World'
$ echo $ln
Hello World
$ perl -E 'say $ENV{q(ln)}'

$

为什么 perl 表达式 $ENV{q(ln)} 不包含预期的环境变量 ln

您需要export环境变量。

$ ln='Hello World'
$ export ln

$ export ln='Hello World'

参见 Bash Beginners' Guide, and the top answer to this Whosebug question

中的第 3.2.3 节