
Je viens de tomber sur un petit problème résolu en moins de deux grâce à mon ami google :
Je devais effacer un fichier dont je ne connais que le lien symbolique. Pour commencer, retrouver le chemin du fichier symbolique est simple :
1
which mon_executable
Cette commande retourne le chemin sur le disque dur en partant du root (/) jusqu’au fichier.
Maintenant, comment retrouver la cible du lien ?
On pourrait faire un
1
ls -l `which mon_executable`
ce qui retourne le chemin du fichier, une flèche, puis la cible. Mais vue que c’est pour mettre dans un script, il me faut extraire ce chemin.
Faire des cut, awk ou autre est une solution… mais pas très fiable… Si l’affichage ne se fait pas pareil d’une version de ls à l’autre, mon script ne marchera plus !
La solution réside dans la commande readlink !
1
readlink which mon_executable
Et voilà !