No se puede exportar la variable a través del archivo de script

Estoy intentando exportar variables a través de myDeploy.sh pero la exportación no se está configurando. Cuando hago eco, no está haciendo eco. Sin embargo, cuando configuro la variable explícitamente en el comando, se establece correctamente y también se repite. A continuación, se muestra el fragmento de mi código.

myDeploy.sh

#!/bin/bash # export the build root export BUILD_ROOT=/tibco/data/GRISSOM2 export CUSTOM1=/tibco/data/GRISSOM2/DEPLOYMENT_ARTIFACTS/common/MDR_ITEM_E1/rulebase export CLEANUP=$BUILD_ROOT/DEPLOYMENT_ARTIFACTS/common cd $BUILD_ROOT/DEPLOYMENT_ARTIFACTS/common 

Cuando hago eco de echo $BUILD_ROOT , no repite el camino para mí. Pero cuando lo hago explícitamente en el símbolo del sistema como

 [root@krog3-rhel5-64 GRISSOM2]# export BUILD_ROOT=/tibco/data/GRISSOM2 

Se establece correctamente y también hace eco. ¿Qué me estoy perdiendo?

Ejecutando su script como

. ./script

o

source script

ejecutaría su script en el contexto de shell actual (sin crear una subshell) y las variables de entorno establecidas dentro de la secuencia de comandos estarían disponibles en su shell actual .

Del manual:

. nombre de archivo [ argumentos ]

Lea y ejecute comandos desde el argumento de nombre de archivo en el contexto de shell actual. Si filename no contiene una barra inclinada, la variable PATH se usa para buscar el nombre del archivo. Cuando Bash no está en modo POSIX , se busca el directorio actual si filename no se encuentra en $PATH . Si se proporcionan argumentos, se convierten en parámetros posicionales cuando se ejecuta el nombre del archivo . De lo contrario, los parámetros posicionales no se modifican. El estado de retorno es el estado de salida del último comando ejecutado o cero si no se ejecutan comandos. Si el nombre del archivo no se encuentra o no se puede leer, el estado de retorno no es cero. Este built-in es equivalente a la source .