> (1) absolute path > example: /usr/local/bin/script.bash [[ ${0:0:1} == "/" ]] > (2) relative path > example: ../../../local/bin/script.bash > example: ./local/bin/script.bash > example: local/bin/script.bash $PWD/`dirname` > (3) in search path ($PATH) > example: script.bash which $0 > (4) as above but using globbing > example: local/bin/scri* $PWD/`dirname` If you are correct that these are the only possibilities. Check for 1 and 3 first, then go with 3/4. Brock