63 votes

Comment supprimer un fichier nommé "NUL" sous Windows ?

J'ai une boîte Windows XP (système de fichiers NTFS) sur laquelle j'ai trouvé un fichier nommé NUL . Je n'ai pas été en mesure de supprimer ce fichier de la manière habituelle. Le fichier semble appartenir à Administrator dans le SYSTEM contrairement à tout autre fichier dans le même répertoire (les autres fichiers appartiennent à mon identifiant d'utilisateur).

Comment puis-je me débarrasser de ce fichier ? D'où vient-il ?

99voto

user541686 Points 22852

Essayez

Del \\?\C:\My\Path\NUL

dans l'invite de commande.

Voir cet article de Microsoft Support pour plus de détails : Vous ne pouvez pas supprimer un fichier ou un dossier sur un volume de système de fichiers NTFS. sous "Cause 5 : Le nom du fichier inclut un nom réservé dans l'espace de nom Win32".

14voto

Ryan McCuaig Points 1416

Alternativement, si vous avez Cygwin installé, vous voudrez peut-être savoir qu'il n'a aucun problème avec de tels fichiers ou dossiers. En particulier,

rm -r /cygdrive/c/path/to/the/file/or/folder/you/want/to/delete

tapé dans le terminal Cygwin supprime le fichier ou le dossier nommé nul ou un dossier, le contenant. Ceci est également applicable à d'autres noms de fichiers spéciaux tels que CON , PRN , AUX , COM1 , COM2 , COM3 , COM4 , COM5 , COM6 , COM7 , COM8 , COM9 , LPT1 , LPT2 , LPT3 , LPT4 , LPT5 , LPT6 , LPT7 , LPT8 .

10voto

spryce Points 399

Je l'ajoute ici parce qu'il figure en bonne place dans les résultats de Google et que j'ai eu un problème similaire pour un dossier nommé NUL. Malheureusement, les corrections ci-dessus n'ont pas aidé. Ni une tonne d'autres choses que j'ai regardées.

J'ai essayé rmdir\\?\C:\My\Path\NUL y rmdir\\.\C:\My\Path\NUL sans succès et j'ai également essayé plusieurs commandes en utilisant bash à partir de mon installation SourceTree. Sans succès.

Au final, j'ai utilisé DIR /X /A à partir de cmd pour lister les noms courts dans le répertoire parent. Cela renvoie NUL~1 pour mon dossier NUL.

Ceci a ensuite été utilisé dans la commande standard rmdir /s NUL~1 et a finalement résolu le problème.

5voto

Jens Points 1073

Si vous avez installé Git pour Windows, procédez comme suit

  1. Ouvrez le répertoire contenant les fichiers que vous voulez supprimer.
  2. Cliquez à gauche et sélectionnez Git Bash Here
  3. Tipo rm nul.json à l'invite de commande et appuyez sur ENTER, le fichier devrait maintenant être supprimé.

run Git Bash Here

NOTE : Ces captures d'écran montrent la suppression du fichier nul.topo.json qui est un autre fichier que je n'ai pas pu supprimer avec une simple suppression.

after command execution

1voto

Red Tux Points 2074

Si vous disposez de PowerShell 6.1.0 (septembre 2018) ou d'une version plus récente :

https://github.com/PowerShell/PowerShell/releases/tag/v6.1.0

vous pouvez faire quelque chose comme ça :

Remove-Item -LiteralPath \\?\C:\NUL

Une autre option est ce programme Go :

package main
import "os"
func main() {
   os.Remove(`\\?\C:\NUL`)
}

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X