En Bash, la forma correcta de obtener la ruta completa a un script de shell es ${BASH_SOURCE[0]} , ya que $0 devuelve bash si el script se está originando. Por ejemplo, intente ejecutar esto en su terminal:
source <(echo 'echo $0') Imprimirá bash .
¿Alguien sabe cómo hacer esto para los scripts de shell de Bourne? Por ejemplo, ¿cuál sería el contenido de un script foo tal que si escribiera esto:
sh -c '. foo'daría como resultado la ruta completa al script?