J'ai exécuté un programme sur Windows 7 qui a été compilé sous Cygwin et a transmis "NUL" comme nom de fichier de sortie. Au lieu de supprimer la sortie, il a en fait créé un fichier nommé "NUL" dans le répertoire actuel. (Apparemment, il attend "/ dev/null", même sous Windows.) Maintenant, je suis bloqué avec ce fichier "NUL" que je ne peux pas supprimer!
J'ai déjà essayé:
remove()
dans un programme C - échoue égalementComment puis-je me débarrasser de ces fichiers NUL (j'en ai plusieurs maintenant), à moins d'installer tout l'environnement Cygwin et de compiler un programme C sous Cygwin pour le faire?
Ouvrez une invite de commande et utilisez ces commandes pour tout d'abord renommer puis supprimer le fichier NUL:
C:\> rename \\.\C:\..\NUL. deletefile.txt
C:\> del deletefile.txt
L'utilisation du préfixe \\.\
indique aux fonctions d'E/S de fichier de haut niveau de transmettre le nom de fichier non analysé au pilote de périphérique - de cette manière, vous pouvez accéder à des noms qui ne sont pas valides.
Lisez cet article à propos des noms de fichiers/chemins valides dans Windows et des différents noms réservés.
Si vous avez installé Git pour Windows (v2.18), procédez comme suit:
Git Bash Here
rm nul.json
à l'invite de commande et appuyez sur Entrée. Le fichier doit maintenant être supprimé.REMARQUE: 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.
J'ai eu un problème similaire. Cygwin l’a probablement aussi provoqué (car je l’utilise régulièrement), mais j’ai depuis oublié la manière dont le fichier a été créé.
J'ai aussi eu du mal à le supprimer. J'ai suivi les conseils de certains autres messages et j'ai essayé de démarrer en mode sans échec pour supprimer le fichier, bien que cela ne fasse rien. Le conseil de + xxbbcc n'a pas fonctionné pour moi non plus.
Cependant, j'ai pu supprimer le fichier en utilisant le terminal Cygwin! Cygwin crée et Cygwin détruit.
Pour supprimer un fichier nul situé ici: C:\unix\cygwin\dev\nul
J'utilise simplement (testé uniquement sous Windows 10): Del \?\C:\unix\cygwin\dev\NUL
J'ai résolu ceci d'une manière légèrement différente.
Je pensais que je voudrais ajouter ceci ici car il est élevé dans les résultats de Google et j'ai eu un problème similaire pour un folder nommé NUL.
J'ai essayé rmdir\\?\C:\My\Path\NUL
et rmdir\\.\C:\My\Path\NUL
sans succès et j'ai également essayé plusieurs commandes en utilisant bash depuis mon installation SourceTree. Pas de joie.
Finalement, j'ai utilisé DIR /X /A
de cmd pour lister les noms abrégés dans le répertoire parent. Cela m'a montré NUL~1
pour mon dossier NUL et a identifié l'essentiel du problème.
Cela a ensuite été utilisé dans la commande standard rmdir /s NUL~1
et a finalement résolu le problème.