[Shell] Obtendo o diretório do script em execução

Isso foi problemático.

Necessário para obter o diretório do script em execução que executo usando source

Normalmente, em um script de shell, você pode usar a variável, $0mas isso muda durante o uso source.

Bo bian.

Copiei a linha abaixo do ansible , que usa uma configuração semelhante em seu script env-setup:

# When run using source as directed, $0 gets set to bash, so we must use $BASH_SOURCE
if [ -n "$BASH_SOURCE" ] ; then
SETUP_DIR
=`dirname $BASH_SOURCE`
else
SETUP_DIR
="$PWD"

Isso funciona.