Quel est l'équivalent de /dev/null
sous Windows?
414
Je pense que vous voulez NUL
, au moins dans une invite de commande ou des fichiers batch.
Par exemple:
type c:\autoexec.bat > NUL
ne crée pas de fichier.
(Je crois que la même chose est vraie si vous essayez de créer un fichier par programme, mais je ne l'ai pas essayé.)
Dans PowerShell, vous voulez $null
:
echo 1 > $null
/dev/random
et/dev/zero
pilotes de périphériques pour Win32.NUL:
(etCON:
,,PRN:
...), C'est principalement une question de style et montre clairement qu'ilNUL:
s'agit d'un objet spécial et non d'un fichier appeléNUL
. De plus, il est possible avec une API spéciale de créer un fichier appeléNUL
(voir une des réponses). Je rêve qu'un jour, si tout le monde utilise les deux-points par convention, nous pourrons déprécier les noms d'appareil spéciaux tant redoutés :-)Selon ce message sur la liste de diffusion GCC , vous pouvez utiliser le fichier "nul" au lieu de / dev / null:
(Crédits à Danny pour ce code; copié-collé de son message.)
Vous pouvez également utiliser ce fichier spécial "nul" par redirection.
la source
C:\dev
répertoire dans Windows et que vous utilisez beaucoup d'utilitaires GNU, vous finirez par acquérir un mystérieux fichier appelé null dans ce répertoire.NUL
dans Windows semble être en fait un chemin virtuel dans n'importe quel dossier. Tout comme..
,.
dans un système de fichiers.Utiliser n'importe quel dossier suivi de NUL fonctionnera.
Exemple,
avoir le même effet que
/dev/null
sur Linux.Cela a été testé sur Windows 7, 64 bits.
la source
md \\.\c:\nul
quora.com/… , gohacking.com/how-to-create-con-folder-in-windows , superuser.com/questions/86999/…nul
Jon Skeet a raison. Voici la page Nul Device Driver dans la documentation Windows Embedded (je n'ai aucune idée pourquoi ce n'est pas ailleurs ...).
En voici un autre:
la source
NUL
fonctionne également par programme. Par exemple:fonctionne comme prévu sans créer de fichier. (MSVC ++ 12.0)
la source
NUL
, et c'était déjà le cas il y a 5 ans.Si vous devez effectuer dans Microsoft Windows l'équivalent d'un lien symbolique vers
/dev/null
Linux, vous devez l'ouvrir et l'administrateurcmd
et taper:Pour les fichiers:
Ou, pour les répertoires:
Cela gardera le fichier / direcotry toujours à 0 octet et retournera toujours le succès à chaque tentative d'écriture.
la source
Vous devez utiliser start et $ NUL pour cela dans Windows PowerShell :
Tapez cette commande en supposant que
mySum
c'est le nom de votre application et que ce5
10
sont les arguments de ligne de commande que vous envoyez.La
start
commande lancera un processus détaché, un effet similaire à&
. L'/B
option empêche le démarrage d'ouvrir une nouvelle fenêtre de terminal si le programme que vous exécutez est une application console. etNUL
est l'équivalent de Windows pour/dev/null
. À2>&1
la fin, redirigera stderr vers stdout, qui ira tous versNUL
.la source