Android

Comment supprimer (supprimer) les liens symboliques sous Linux

Créer et utiliser un lien sous Linux

Créer et utiliser un lien sous Linux

Table des matières:

Anonim

Un lien symbolique, également appelé lien symbolique, est un type de fichier spécial qui pointe vers un autre fichier ou répertoire. C'est quelque chose comme un raccourci dans Windows. Un lien symbolique peut pointer vers un fichier ou un répertoire sur le même système de fichiers ou une partition différente.

Dans ce guide, nous vous montrerons comment supprimer (supprimer) les liens symboliques dans les systèmes Linux / UNIX à l'aide des commandes rm , unlink et find .

Avant que tu commences

Pour supprimer un lien symbolique, vous devez disposer d'autorisations d'écriture sur le répertoire qui contient le lien symbolique. Sinon, vous obtiendrez l'erreur «Opération non autorisée».

Lorsque vous supprimez un lien symbolique, le fichier vers lequel il pointe n'est pas affecté.

Utilisez la commande ls -l pour vérifier si un fichier donné est un lien symbolique et pour trouver le fichier ou le répertoire vers lequel le lien symbolique pointe.

ls -l /usr/bin/python

lrwxrwxrwx 1 root root 9 Apr 16 2018 /usr/bin/python -> python2.7

Le premier caractère «l», indique que le fichier est un lien symbolique. Le symbole «->» indique le fichier vers lequel le lien symbolique pointe.

Supprimer les liens symboliques avec rm

La commande rm supprime les fichiers et répertoires donnés.

Pour supprimer un lien symbolique, appelez la commande rm suivie du nom du lien symbolique comme argument:

rm symlink_name

En cas de succès, la commande se termine avec zéro et n'affiche aucune sortie.

Avec rm vous pouvez supprimer plusieurs liens symboliques à la fois. Pour ce faire, passez les noms des liens symboliques sous forme d'arguments, séparés par un espace:

rm symlink1 symlink2

Pour être invité avant de supprimer le lien symbolique, utilisez l'option -i :

rm -i symlink_name

Pour confirmer, tapez y et appuyez sur Enter .

rm: remove symbolic link 'symlink_name'?

Si le lien symbolique pointe vers un répertoire, n'ajoutez pas la barre oblique / fin à la fin. Sinon, vous obtiendrez une erreur:

rm symlink_to_dir/

rm: cannot remove 'symlink_to_dir/': Is a directory

Si le nom de l'argument se termine par / , la commande rm suppose que le fichier est un répertoire. L'erreur se produit car, lorsqu'il est utilisé sans l'option -d ou -r , rm ne peut pas supprimer les répertoires.

Pour être prudent, ne jamais l'option -r lors de la suppression des liens symboliques avec rm . Par exemple, si vous tapez:

rm -f symlink_to_dir/

Le contenu du répertoire cible sera supprimé.

Supprimer les liens symboliques avec unlink

La commande unlink supprime un fichier donné. Contrairement à rm , unlink n'accepte qu'un seul argument.

Pour supprimer un lien symbolique, exécutez la commande unlink suivie du nom du lien symbolique comme argument:

unlink symlink_name

Si la commande s'exécute avec succès, elle n'affiche aucune sortie.

N'ajoutez pas la barre oblique / à la fin du nom du lien symbolique, car unlink ne peut pas supprimer les répertoires.

Rechercher et supprimer des liens symboliques rompus

Pour rechercher tous les liens symboliques rompus sous un répertoire donné, exécutez la commande suivante:

find /path/to/directory -xtype l

/path/to/directory/symlink1 /path/to/directory/subdir/symlink2

La commande répertorie tous les liens rompus sous le répertoire et ses sous-répertoires.

find /path/to/directory -maxdepth 1 -xtype l

/path/to/directory/symlink1

Une fois que vous avez trouvé les liens symboliques rompus, vous pouvez soit les supprimer manuellement avec rm ou unlink ou utiliser l'option -delete de la commande find :

find /path/to/directory -xtype l -delete

Conclusion

Pour supprimer un lien symbolique, utilisez la commande rm ou unlink suivie du nom du lien symbolique comme argument. Lors de la suppression d'un lien symbolique pointant vers un répertoire, n'ajoutez pas de barre oblique de fin au nom du lien symbolique.

rm unlink find terminal