¿Para qué sirve la notación ./ antes de ejecutar un script en la consola?

Normalmente, cuando vas a usar una herramienta o utilidad en Linux lo haces mediante su comando correspondiente. Para Git, todo comando inicia con la instrucción git; para instalar software en distros basadas en Debian se usa apt-get; si quieres correr un script en Ruby usas ruby archivo.rb o en NodeJS node archivo.js.

Hay otras utilidades que se ejecutan desde una ruta dada, por ejemplo wkhtmltopdf que se ejecuta desde /usr/local/bin/wkhtmltopdf. Sin embargo, hay una notación la cual vengo a intentar explicar hoy y se trata de la notación ./ (punto diagonal-slash).

Bueno, siempre al rescate nuestro fiel amigo StackOverflow donde encuentro la pregunta y una respuesta adecuada para las veces que se usa esta notación.

shell love

La razón viene dada ya que en sistemas basados en Unix, por norma, el directorio actual no se encuentra en la variable de entorno $PATH. Cuando ejecutas un script sin especificar su directorio de origen (ruby archivo.rb) el shell de sistema hará una búsqueda en los directorios especificados en la variable PATH hasta hallarlo o arrojar algún error.

En el caso contrario, si usas la notación ruby ./archivo.rb le estarás diciendo al shell donde exactamente está ubicado el archivo, le ahorras la búsqueda en todo el sistema y una que otra incomodidad.

Como lo pone una de las respuestas en la pregunta:

The ./ says ‘look in the current directory for my script rather than looking at all the directories specified in $PATH’.

Usar ./ dice “busca el script en el directorio actual en vez de ir a buscar en todos los directorios que aparecen en $PATH

En ocasiones llamar algunos scripts sin especificar el directorio actual puede funcionar aunque es mejor idea hacerlo mediante la notación ./

Anuncios

Autor: cesc1989

Ingeniero de Sistemas que le gusta escribir y compartir sobre recursos que considera útiles, además que le gusta leer manga y ver anime.

2 comentarios en “¿Para qué sirve la notación ./ antes de ejecutar un script en la consola?”

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s