It seems like you could get much the same effect with this device: ---------------------------------------------------------------------- t1 contains:
# Where I am doing this testing. BASH_IMPORT_PATH=$HOME/temp/import/t2 echo "Note PATH does not contain '.'" echo "PATH=$PATH" echo "BASH_IMPORT_PATH=$BASH_IMPORT_PATH" function import () { local PATH="$BASH_IMPORT_PATH" source "$1" } import t2 echo "T2_VARIABLE=$T2_VARIABLE" ---------------------------------------------------------------------- t2 contains: echo "Executing t2" T2_VARIABLE=t2_value ---------------------------------------------------------------------- Test execution: $ bash ./t1 Note PATH does not contain '.' PATH=/home/worley/bin/x86_64:/home/worley/bin:/usr/local/bin:/usr/bin:/bin:/usr/ucb:/etc:/usr/etc:/usr/X11R6/bin:/usr/hosts:/usr/games:/usr/lib64/qt-3.3/bin:/usr/lib64/ccache:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin BASH_IMPORT_PATH=/home/worley/temp/import/t2 Executing t2 T2_VARIABLE=t2_value $ ---------------------------------------------------------------------- Dale