GNU/Linux >> Tutoriels Linux >  >> Linux

Comment dissocier un fichier lié symboliquement à lui-même sans le détruire

Si un fichier est lié symboliquement à lui-même, il n'y a pas de données présentes et toute tentative d'y accéder entraînera une boucle, et finalement une erreur

par exemple

$ ls -l myfile 
lrwxrwxrwx 1 sweh sweh 19 Sep  9 22:38 myfile -> /path/to/here/myfile

$ cat myfile 
cat: myfile: Too many levels of symbolic links

Puisqu'il n'y a pas de données, la suppression de ces liens symboliques ne fera pas perdre de données, car il existe aucune donnée à conserver.

Si vous n'obtenez pas le Too many levels of symbolic links erreur lorsque vous essayez de cat le fichier alors votre fichier n'est pas un lien vers lui-même.


ln ne sera jamais écraser un fichier avec un lien vers lui-même. Vous pouvez obtenir un fichier lié à lui-même avec :

$ ln -s `pwd`/myfile myfile
$ ls -l myfile
lrwxrwxrwx 1 grochmal users 25 Sep 10 03:41 myfile -> /home/grochmal/tmp/myfile

Mais si vous essayez avec un fichier contenant des données :

$ rm -f myfile
$ echo yay > myfile
$ ln -sf `pwd`/myfile myfile
ln: '/home/grochmal/tmp/myfile' and 'myfile' are the same file

ln , en revanche, écrasera un fichier avec un lien vers un autre fichier.

Pourtant, vous pouvez être sûr qu'un lien vers lui-même est un fichier qui n'a jamais eu de données (ou qui a été explicitement supprimé avant la création du lien symbolique).

(sous Linux et en utilisant ln à partir de coreutils , c'est-à-dire)


Linux
  1. Linux – Comment régénérer 70-persistent-net.rules sans redémarrage ?

  2. Comment créer des chiffres hexadécimaux aléatoires sans espaces ?

  3. Comment exécuter un fichier sans extension .sh dans le shell

  4. Comment puis-je chown un fichier à un subuid sans sudo

  5. Comment supprimer un fichier sans utiliser rm ?

Comment exécuter la commande Sudo sans mot de passe

Comment utiliser ISPConfig et Seafile sans modifications manuelles des fichiers

Comment le gestionnaire de fichiers monte-t-il un lecteur externe sans Sudo ?

Comment éditer un fichier sans changer ses horodatages sous Linux

Comment ouvrir une image ISO sans graver sur un disque sous Linux

Comment exécuter mkfs sur des partitions d'images de fichiers sans montage ?