Comandos Linux · 2 min read · Oct 26, 2025

Tutorial de comandos readlink y realpath de Linux para principiantes (con ejemplos)

Ya hemos discutido el comando ln, que te permite crear enlaces entre archivos. Sin embargo, algunas herramientas te permiten resolver estos enlaces.

En este tutorial, discutiremos los conceptos básicos de los comandos realpath y readlink que son similares (si no iguales) en que muestran enlaces simbólicos resueltos en la salida. Pero antes de hacer eso, vale la pena mencionar que todos los ejemplos aquí han sido probados en Ubuntu 24.04 LTS y Debian 12.

Comandos realpath y readlink de Linux

Como se mencionó al principio, ambos comandos realpath y readlink muestran la ruta resuelta para symlinks en la salida.

A continuación se muestra su sintaxis:

realpath [OPCIÓN]... ARCHIVO...
readlink [OPCIÓN]... ARCHIVO...

Y esto es lo que dicen sus respectivas páginas man:

Imprimir el nombre de archivo absoluto resuelto
imprimir enlaces simbólicos resueltos o nombres de archivos canónicos

A continuación se presentan algunos ejemplos en formato de preguntas y respuestas que deberían darte una mejor idea de cómo funcionan estas herramientas.

P1. ¿Cómo resolver una ruta usando realpath y readlink?

Simple: solo proporciona el archivo o la ruta como entrada. El siguiente ejemplo muestra ambos comandos resolviendo un enlace simbólico.

Y así es como funcionan con rutas:

Así que puedes ver que ambos comandos resolvieron con éxito los symlinks en los dos casos.

P2. ¿Cómo imprimir la ruta resuelta relativa a un directorio?

El comando realpath te permite hacer esto fácilmente. Por ejemplo, supongamos que esto es lo que intentas hacer:

realpath /var/local/Downloadslink

Sin embargo, un requisito adicional es tener la salida de este comando relativa al directorio /home/himanshu. Entonces, el siguiente es el comando que necesitas ejecutar:

realpath /var/local/Downloadslink --relative-to=/home/himanshu

Aquí está la salida:

Downloads

Así que puedes ver que la opción ‘–relative-to’ te permitió tener la salida relativa al directorio /home/himanshu.

P3. ¿Cómo deshacerte de .. en las rutas?

Puede haber momentos en que expandir/resolver symlinks no sea el objetivo, sino deshacerse de .. en la ruta. El comando realpath te permite hacer esto.

Todo lo que tienes que hacer es usar la opción de línea de comandos -s. Aquí hay un ejemplo:

realpath -s ../../var/local/Downloadslink

Y a continuación se muestra la salida de este comando:

/var/local/Downloadslink

P4. ¿Cómo cambiar el carácter delimitador?

Por defecto, se utiliza la nueva línea como carácter delimitador. Sin embargo, ambos comandos proporcionan una forma de tener NUL como delimitador en su lugar.

La opción que necesitas usar en ambos casos es -z.

realpath -z [ARCHIVO/RUTA]
readlink -z [ARCHIVO/RUTA]

Conclusión

Hemos discutido aquí solo un puñado de opciones/características que estos comandos proporcionan. Una vez que hayas terminado de practicar estos, dirígete a las páginas man de readlink y realpath (aquí y aquí) para aprender más sobre estas herramientas.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.