Lectores como tú ayudan a apoyar a MUO. Cuando realiza una compra utilizando enlaces en nuestro sitio, podemos ganar una comisión de afiliado.
Los nombres de ruta absolutos y relativos son dos formas de especificar la dirección virtual de un directorio o archivo en Linux. Pero, ¿cuál es la diferencia entre estos dos tipos de ruta y cuál debe usar en sus comandos? Vamos a averiguar.
Rutas relativas y absolutas en Linux
Si alguna vez ha usado algún comando de Linux basado en argumentos como cd o ls, sabrá que hay varias formas de especificar la ruta a un directorio o archivo.
Es posible que prefiera apegarse a las expresiones de ruta normales o, si es un usuario avanzado de Linux, emplear expresiones regulares complejas para pasar un nombre de archivo o directorio a un programa. De cualquier manera, solo hay dos formas de especificar una ruta de directorio en Linux: ruta absoluta y ruta relativa.
Expresiones de ruta absoluta
Una ruta absoluta siempre comienza desde el directorio raíz y termina en el directorio o archivo real al que desea apuntar. Al usar la expresión de ruta absoluta, debe escribir todos los nombres de subdirectorios presentes dentro de la jerarquía que conducen a la ubicación final.
Por ejemplo, si desea señalar /myfolder/folder2 dentro de /var/www directorio usando la expresión de ruta absoluta, usaría:
/variable/www/myfolder/folder2
...donde el / al comienzo de la expresión se refiere al directorio raíz en Linux.
Expresiones de rutas relativas
La ruta relativa, por otro lado, se refiere a una expresión de ruta que usa otra ruta (generalmente el directorio de trabajo actual) como su raíz o base. Como sugiere el nombre, es "relativo" a una ruta existente en su sistema.
Por ejemplo, si actualmente se encuentra dentro del /var/www directorio y necesita apuntar a /myfolder/folder2, usarías:
./micarpeta/carpeta2
...dónde . indica el directorio actual en el que se encuentra. Puede cambiar el directorio de trabajo actual usando el comando cd.
Aparte de un solo período (.), las expresiones de ruta relativa también emplean puntos dobles (..) para hacer referencia al directorio principal.
Por ejemplo, considere que está dentro del /www carpeta dentro de la siguiente estructura de directorios:
/variable/www/myfolder/folder2
En la expresión de ruta mencionada anteriormente, . denotará la /www directorio mientras que .. apuntará a la /var directorio. Si hay otro directorio /random adentro /var que necesita acceder mientras está dentro /var/www, usarías:
../aleatorio
Simple como eso.
Absoluto contra Relativo: ¿Qué expresión de ruta es mejor?
Aunque las expresiones de ruta pueden parecer simples y sin importancia para usted como usuario de escritorio, existen varios casos de uso en los que usar el nombre de ruta incorrecto puede generar muchos inconvenientes no solicitados. Los servidores web son un buen ejemplo.
Como desarrollador web que trabaja en un proyecto alojado en un servidor Linux, debe acceder a los archivos dentro del directorio del proyecto. Aquí, el uso de expresiones de ruta relativa es el estándar, ya que cualquier cambio en los nombres de los subdirectorios o el nombre de dominio del proyecto puede dar lugar a enlaces rotos.
Puede entender esto con un ejemplo simple con el que los usuarios de escritorio podrían identificarse mejor. El / El carácter denota el directorio raíz en un sistema Linux. Imagínese si de repente cambia eso y hace que el / punto de carácter al directorio de inicio. Muchos de sus comandos que contienen expresiones de rutas absolutas no funcionarán ya que / ahora ha sido reasignado a un directorio diferente.
Otra ventaja de usar expresiones de rutas relativas es que, dado que son relativas al directorio de trabajo actual, le ahorra tiempo que, de lo contrario, perdería escribiendo caracteres innecesarios.
El único problema aquí es la complejidad y la curva de aprendizaje asociada con las expresiones relativas. Pero eso también es común en expresiones de rutas absolutas; para convertirse en un maestro en el uso de rutas absolutas, debe estar bien versado en la jerarquía de directorios de Linux. Puedes usar el comando de árbol para ver todo el árbol de directorios de Linux y haga que las expresiones de rutas absolutas sean más fáciles para usted.
Comprender la jerarquía de directorios de Linux
La estructura de directorios de Linux es común a todas las máquinas que ejecutan sistemas operativos basados en Linux. Puede usar un comando como ls o tree para obtener más información sobre cómo están estructurados los archivos y las carpetas en su computadora.