Determine si la ruta relativa o absoluta en el programa shell

Como se indica en el título, debo determinar cuándo se ejecuta un programa si la ruta es relativa o absoluta:

./program #relative
dir/dir2/program #relative
~User/dir/dir2/program #absolute
/home/User/dir/dir2/program #absolute

Estos son mis casos de prueba. ¿Cómo podría exactamente hacer esto en un programa shell?

O más en general, cómo comprobar si un camino,$0 En este caso, ¿es relativo o absoluto?

Respuestas a la pregunta(4)

Su respuesta a la pregunta