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 resueltoimprimir enlaces simbólicos resueltos o nombres de archivos canónicosA 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/DownloadslinkSin 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/himanshuAquí está la salida:
DownloadsAsí 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/DownloadslinkY a continuación se muestra la salida de este comando:
/var/local/DownloadslinkP4. ¿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.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.