Dans les systèmes Linux, les liens symboliques (liens symboliques, ou liens symboliques en abrégé) sont également appelés liens symboliques. Il s'agit d'un type spécial de fichier utilisé comme raccourci vers un autre fichier.
Nous pouvons utiliser la commande ln pour créer des liens symboliques. Alors comment le supprimer ? Il n'existe pas de commande spécifiquement pour supprimer les liens symboliques dans les systèmes Linux, mais nous pouvons utiliser la commande rm pour le supprimer. La commande rm est principalement utilisée pour supprimer des fichiers et des répertoires.
rm symbolic_link_name
Bien sûr, vous pouvez également utiliser la commande Unlink, mais n'utilisez pas directement le nom du lien symbolique, car il n'est pas seulement utilisé pour supprimer le lien, mais supprime également le fichier.
unlink symbolic_link_name
Regardons de plus près ci-dessous.
Utilisez la commande rm pour supprimer les liens symboliques
Fournissez le nom du chemin du lien après la commande rm :
rm name_or_path_of_link
Regardons un exemple spécifique. La commande suivante répertorie les fichiers dans le chemin actuel :
$ ls -l total 4708 -rw-rw-r-- 1 abhishek abhishek 4794657 Sep 27 20:36 export.json -rw-rw-r-- 1 abhishek abhishek 311 Sep 22 12:19 line.txt lrwxrwxrwx 1 abhishek abhishek 26 Oct 17 11:24 mylink -> ./Documents/sample-mark.md -rw-rw-r-- 1 abhishek abhishek 106 Sep 27 20:39 redirects.json -rw-r--r-- 1 abhishek abhishek 12817 Sep 22 12:28 sample.txt
Mon lien dans la liste ci-dessus est un lien symbolique. Vous pouvez voir qu'il commence par l (indiquant un lien) et que le nom indique le fichier vers lequel il pointe.
Nous utilisons rm pour le supprimer et vérifier :
$ rm mylink $ ls -l total 4708 -rw-rw-r-- 1 abhishek abhishek 4794657 Sep 27 20:36 export.json -rw-rw-r-- 1 abhishek abhishek 311 Sep 22 12:19 line.txt -rw-rw-r-- 1 abhishek abhishek 106 Sep 27 20:39 redirects.json -rw-r--r-- 1 abhishek abhishek 12817 Sep 22 12:28 sample.txt
Comme le montre l'image ci-dessous, le fichier source existe toujours :
Supprimer plusieurs liens
Vous pouvez utiliser la commande rm pour supprimer plusieurs liens symboliques à la fois :
rm symlink1 symlink2 symlink3
Utilisez la commande Unlink pour supprimer les liens symboliques
Une autre façon de supprimer les liens symboliques consiste à utiliser la commande Unlink. Cette commande peut sembler utilisée uniquement pour supprimer des liens, mais elle peut également supprimer des fichiers. Comment utiliser :
unlink name_or_path_of_link
Nous utilisons l'exemple ci-dessus, comme indiqué ci-dessous :
unlink ne peut pas supprimer plusieurs liens à la fois.
Supprimer les liens symboliques vers les répertoires
Nous pouvons créer des liens symboliques vers des fichiers, et nous pouvons également créer des liens symboliques vers des répertoires. La suppression d'un répertoire nécessite l'option -r, mais la suppression d'un lien vers un répertoire ne nécessite pas l'option -r.
L'utilisation revient à supprimer des liens de fichiers :
rm name_or_path_to_link_to_dir
Lors de la suppression d'un lien symbolique pointant vers un répertoire, n'ajoutez pas de barre oblique à la fin du répertoire, sinon une erreur sera signalée :
$ rm link_to_dir/ rm: cannot remove 'link_to_dir/': Is a directory
L'image ci-dessous est un exemple de suppression d'un lien logiciel d'annuaire :
Remarque, essayez de ne pas utiliser l'option -f pour forcer la suppression des liens vers des répertoires, car cela supprimerait le contenu du répertoire. Comme le montre l'image ci-dessous :
Supprimer le lien physique
Contrairement aux liens symboliques, les liens physiques sont presque impossibles à distinguer du fichier original, vous ne pouvez le remarquer que par le numéro d'inode.
Regardez l'exemple ci-dessous :
$ ls -li total 4716 544057 -rw-rw-r-- 1 abhishek abhishek 4794657 Sep 27 20:36 export.json 544884 -rw-rw-r-- 2 abhishek abhishek 311 Sep 22 12:19 hard_link 544884 -rw-rw-r-- 2 abhishek abhishek 311 Sep 22 12:19 line.txt 1181365 drwxrwxr-x 2 abhishek abhishek 4096 Oct 17 12:33 my_dir 546419 -rw-rw-r-- 1 abhishek abhishek 106 Sep 27 20:39 redirects.json
Supprimer un lien physique équivaut à supprimer un fichier :
rm path_or_name_of_hard_link
Que se passe-t-il si vous supprimez le fichier lié ?
En fait, il n'existe presque aucun scénario ni exigence pour supprimer le fichier d'origine lors de la suppression du lien logiciel. Bien sûr, s'il y en a un, vous pouvez retrouver le fichier original via le lien symbolique et le supprimer.
rm "$(readlink '/path/to/link')" /path/to/link
Notez que si vous supprimez le fichier source mais ne supprimez pas le lien symbolique, le lien deviendra un lien rompu ou suspendu.
Bien que la commande unlink existe, je recommande d'utiliser la commande rm pour supprimer les liens symboliques. Comme il s’agit d’une commande que nous connaissons tous, nous l’utilisons souvent pour supprimer des fichiers. Bien entendu, elle peut également être utilisée pour supprimer des liens symboliques.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!