GNU/Linux >> Tutoriels Linux >  >> Linux

Supprimer un fichier sous Linux en utilisant le numéro d'inode

Certaines autres méthodes incluent :

échapper les caractères spéciaux :

[~]$rm \"la\*

utilisez la commande find et recherchez uniquement le répertoire courant. La commande find peut rechercher des numéros d'inode et possède un -delete pratique commutateur :

[~]$ls -i
7404301 "la*

[~]$find . -maxdepth 1 -type f -inum 7404301
./"la*

[~]$find . -maxdepth 1 -type f -inum 7404301 -delete
[~]$ls -i
[~]$

Peut-être qu'il me manque quelque chose, mais...

rm '"la*'

Quoi qu'il en soit, les noms de fichiers n'ont pas d'inodes, contrairement aux fichiers. Essayer de supprimer un fichier sans supprimer tous les noms de fichiers qui y pointent endommagera votre système de fichiers.


Si vous vraiment voulez le faire - et votre cas d'utilisation ne semble pas vraiment nécessaire, vous pouvez essayer des outils de débogage du système de fichiers. Si vous êtes prêt à tout perdre, bien sûr.

Par exemple, pour ext2/3/4 le debugfs La commande a une option "kill_file" qui semble prendre un inode. Comme mentionné dans d'autres réponses, cela sera endommager votre système de fichiers, car il y aura des entrées de répertoire pointant vers un fichier inexistant. Exécution de fsck par la suite peut être en mesure de réparer cela. Il est peu probable que vous puissiez le faire sur un système de fichiers monté.

Mais je recommanderais fortement vous utilisez simplement les échappements / guillemets appropriés et supprimez ces fichiers avec le rm normal commande comme mentionné dans une réponse précédente - et utilisez rm -i pour plus de sécurité lorsque vous traitez des noms de fichiers contenant des caractères globaux comme *


Linux
  1. Comment extraire le fichier tar.gz sous Linux à l'aide de la ligne de commande

  2. Comment supprimer un utilisateur sous Linux à l'aide de la ligne de commande

  3. Utilisation de Google Drive à partir de la ligne de commande Linux

  4. Exemples essentiels de la commande File sous Linux

  5. Quelle est la commande pour copier, lire et supprimer un fichier sous Linux

Comment utiliser la commande touch sous Linux

Comment utiliser la commande Linux head

Comment utiliser la commande Linux diff

Utilisation de la commande gratuite Linux

Commande Dissocier sous Linux (Supprimer le fichier)

Tutoriel sur l'utilisation de la commande Timeout sous Linux