Comandi Linux · 2 min read · Oct 26, 2025
Tutorial sui comandi Linux readlink e realpath per principianti (con esempi)

Abbiamo già discusso del comando ln, che ti consente di creare collegamenti tra file. Tuttavia, alcuni strumenti ti permettono di risolvere questi collegamenti.
In questo tutorial, discuteremo le basi dei comandi realpath e readlink che sono simili (se non identici) in quanto mostrano i collegamenti simbolici risolti nell’output. Ma prima di farlo, vale la pena menzionare che tutti gli esempi qui sono stati testati su Ubuntu 24.04 LTS e Debian 12.
Comandi realpath e readlink di Linux
Come accennato all’inizio, entrambi i comandi realpath e readlink mostrano il percorso risolto per i symlink nell’output.
Di seguito è riportata la loro sintassi:
realpath [OPZIONE]... FILE...readlink [OPZIONE]... FILE...Ecco cosa dicono le rispettive pagine man:
Stampa il nome del file assoluto risoltostampa collegamenti simbolici risolti o nomi di file canoniciDi seguito sono riportati alcuni esempi in stile Q&A che dovrebbero darti un’idea migliore di come funzionano questi strumenti.
D1. Come risolvere un percorso utilizzando realpath e readlink?
Semplice: basta fornire il file o il percorso come input. Il seguente esempio mostra entrambi questi comandi che risolvono un collegamento simbolico.
Ecco come funzionano con i percorsi:
Quindi puoi vedere che entrambi i comandi hanno risolto con successo i symlink nei due casi.
D2. Come stampare il percorso risolto relativo a una directory?
Il comando realpath ti consente di farlo facilmente. Ad esempio, supponiamo che questo sia ciò che stai cercando di fare:
realpath /var/local/DownloadslinkTuttavia, un requisito aggiuntivo è avere l’output di questo comando relativo alla directory /home/himanshu. Allora il comando che devi eseguire è il seguente:
realpath /var/local/Downloadslink --relative-to=/home/himanshuEcco l’output:
DownloadsQuindi puoi vedere che l’opzione ‘–relative-to’ ti ha permesso di avere l’output relativo alla directory /home/himanshu.
D3. Come eliminare semplicemente .. nei percorsi?
Potrebbero esserci momenti in cui espandere/risolvere i symlink non è l’obiettivo, ma eliminare .. nel percorso lo è. Il comando realpath ti consente di farlo.
Tutto ciò che devi fare è utilizzare l’opzione della riga di comando -s. Ecco un esempio:
realpath -s ../../var/local/DownloadslinkEcco l’output di questo comando:
/var/local/DownloadslinkD4. Come cambiare il carattere di delimitazione?
Per impostazione predefinita, viene utilizzato il carattere di nuova riga come carattere di delimitazione. Tuttavia, entrambi i comandi forniscono un modo per avere NUL come delimitatore invece.
L’opzione che devi utilizzare in entrambi i casi è -z.
realpath -z [FILE/PERCORSO]readlink -z [FILE/PERCORSO]Conclusione
Abbiamo discusso qui solo un pugno di opzioni/caratteristiche che questi comandi forniscono. Una volta che hai finito di esercitarti con questi, vai alle pagine man di readlink e realpath (qui e qui) per saperne di più su questi strumenti.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.