Es wird gesagt, dass Umgebungsvariablen in untergeordneten Prozessen vererbt werden, Shell-Variablen jedoch nicht. Der folgende Test zeigt jedoch, dass Shell-Variablen im untergeordneten Prozess genauso wie Umgebungsvariablen angezeigt werden. Was ist der Unterschied?
> bash --version
GNU bash, version 3.2.39(1)-release (x86_64-suse-linux-gnu)
Copyright (C) 2007 Free Software Foundation, Inc.
> export TEST="ENV_TEST" #env var
> sh -c "echo \$TEST"
ENV_TEST
> TEST="SHELL_TEST" #shell var
> sh -c "echo \$TEST" #shell var is seen in child process
SHELL_TEST