【发布时间】:2016-12-07 08:34:02
【问题描述】:
我知道 shell 变量是当前 shell 的本地变量,而环境变量(exported 变量)被传递给由 shell 派生的子进程。
当我在双引号内运行 Perl 单行代码时,我可以从 forked perl 进程访问(本地)shell 变量:
$ FOO=bar
$ perl -we "print qx'echo $FOO'"
bar
这是为什么呢?
【问题讨论】:
-
比较:`perl -we 'print qx/ echo $ENV{FOO} /'。