export - disponibiliza variáveis para processos filhos, mas não para pais.
source - execute o script no shell sem criar um processo filho
Para o exalmpe, a variável persistente pode ser realizada gravando no arquivo
#!/usr/bin/bash
echo 1: $TEST #variable not defined yet, expect to print only 1:
CONFIGFILE=~/test-persistent.vars
if [ -r ${CONFIGFILE} ]; then
# Read the configfile if it's existing and readable
source ${CONFIGFILE}
fi
echo 2: $TEST
echo 3: $USER
TEST=sss
echo 4: $TEST
echo TEST="$TEST"> ${CONFIGFILE}
echo 5: $TEST