Если ваш сценарий BASH является символом, то это способ сделать это
#!/usr/bin/env bash
dirn="$(dirname "$0")"
rl="$(readlink "$0")";
exec_dir="$(dirname $(dirname "$rl"))";
my_path="$dirn/$exec_dir";
X="$(cd $(dirname ${my_path}) && pwd)/$(basename ${my_path})"
X - это каталог, в котором содержится ваш bash-скрипт (оригинальный файл, а не символическая ссылка). Клянусь Богом, это работает, и это единственный способ, которым я знаю, как делать это правильно.