Consider the following code:
#!/usr/bin/bash
t_export() {
declare dummy="Hello"
export dummy
echo dummy: $dummy
echo printenv dummy: $(printenv dummy)
}
t_export
echo dummy: $dummy
echo printenv dummy: $(printenv dummy)
Output:
dummy: Hello
printenv dummy: Hello
dummy:
printenv dummy:
How do you explain this? I thought the environment is always global and therefore the variable dummy
would also be visible outside the function.