Sous Linux, lorsque vous créez un dossier, il crée automatiquement deux liens durs vers l'inode correspondant. L'un qui est le dossier que vous avez demandé de créer, l'autre étant le .
dossier spécial ce dossier.
Exemple:
$ mkdir folder
$ ls -li
total 0
124596048 drwxr-xr-x 2 fantattitude staff 68 18 oct 16:52 folder
$ ls -lai folder
total 0
124596048 drwxr-xr-x 2 fantattitude staff 68 18 oct 16:52 .
124593716 drwxr-xr-x 3 fantattitude staff 102 18 oct 16:52 ..
Comme vous pouvez le voir, les deux folder
et à .
l'intérieur folder
ont le même numéro d'inode (montré avec -i
option).
Est-il possible de supprimer ce .
lien spécial ?
C'est uniquement pour l'expérimentation et la curiosité.
Je suppose que la réponse pourrait également s'appliquer au ..
fichier spécial.
J'ai essayé de regarder l' rm
homme mais je n'ai trouvé aucun moyen de le faire. Lorsque j'essaie de supprimer .
tout ce que j'obtiens, c'est:
rm: "." et ".." ne peuvent pas être supprimés
Je suis vraiment curieux de savoir comment ces choses fonctionnent, alors ne vous abstenez pas d'être très bavard sur le sujet.
EDIT: Peut-être que je n'étais pas clair avec mon message, mais je veux comprendre le mécanisme sous-jacent qui est responsable des .
fichiers et les raisons pour lesquelles ils ne peuvent pas être supprimés.
Je sais que la norme POSIX interdit un dossier avec moins de 2 liens physiques, mais je ne comprends pas vraiment pourquoi. Je veux savoir s'il serait possible de le faire de toute façon.