#!/usr/bin/perl -w use strict; use warnings; $ENV{'abc'} = 'def'; system('echo $abc'); #### % echo $abc abc: Undefined variable. #### [Parent process] ======> [Perl subprocess] ====> [Sub process shell] Env list #1, Env list #2 Env list #3 "abc" NOT defined copied from the copied from the Parent process, Perl subprocesses, define "abc" here "abc" still defined