I claimed that functions cannot access variables from the shell they are run it. This is incorrect. As an example: func () { echo $foo } foo="foo value" func will print "foo value".