Résoudre la cible d'un lien avec readlink
Dans cette étape, vous apprendrez à utiliser la commande readlink
pour trouver la cible d'un lien symbolique.
Alors que ls -l
est excellent pour avoir une vue d'ensemble visuelle, la commande readlink
est spécifiquement conçue pour résoudre les liens symboliques et afficher le chemin de leur cible. Cela est particulièrement utile dans les scripts ou lorsque vous avez besoin uniquement du chemin de la cible sans les autres informations sur le fichier.
Assurez-vous d'être dans le répertoire ~/project
.
Utilisez la commande readlink
sur le lien symbolique my_symlink
que vous avez créé dans les étapes précédentes :
readlink my_symlink
La sortie sera le chemin vers lequel le lien symbolique pointe :
original_file.txt
Cela confirme que my_symlink
pointe effectivement vers original_file.txt
.
La commande readlink
a une option utile, -f
, qui suit de manière récursive tous les liens symboliques et les résout jusqu'au chemin absolu de la cible finale. Cela est utile si vous avez une chaîne de liens symboliques.
Créons un autre lien symbolique qui pointe vers my_symlink
:
ln -s my_symlink another_link
Maintenant, si vous utilisez readlink
sur another_link
sans l'option -f
, il affichera la cible immédiate :
readlink another_link
Sortie :
my_symlink
Mais si vous utilisez readlink -f
sur another_link
, il suivra la chaîne (another_link
-> my_symlink
-> original_file.txt
) et vous donnera le chemin absolu de la cible finale :
readlink -f another_link
Sortie :
/home/labex/project/original_file.txt
Cela montre le chemin complet vers le fichier original. La commande readlink -f
est très puissante pour trouver la destination ultime d'un lien, même s'il est imbriqué dans d'autres liens.
Vous avez maintenant appris trois façons de travailler avec les liens symboliques : en utilisant test -L
pour vérifier si un fichier est un lien, en utilisant ls -l
pour voir les détails et les cibles des liens, et en utilisant readlink
pour résoudre le chemin de la cible.