Respuestas:
Creo que lo desea NUL, al menos dentro de un símbolo del sistema o archivos por lotes.
Por ejemplo:
type c:\autoexec.bat > NUL
no crea un archivo
(Creo que lo mismo es cierto si intentas crear un archivo mediante programación, pero no lo he intentado).
En PowerShell, quieres $null:
echo 1 > $null
NUL:(y CON:, PRN:...), es principalmente una cuestión de estilo y muestra claramente que NUL:es un objeto especial y no un archivo llamado NUL. Además, es posible con una API especial hacer un archivo llamado NUL(ver una de las respuestas). Sueño con que tal vez algún día, si todos usan el colon por convención, podamos desaprobar los temidos nombres de dispositivos especiales :-)
De acuerdo con este mensaje en la lista de correo de GCC , puede usar el archivo "nul" en lugar de / dev / null:
#include <stdio.h>
int main ()
{
FILE* outfile = fopen ("/dev/null", "w");
if (outfile == NULL)
{
fputs ("could not open '/dev/null'", stderr);
}
outfile = fopen ("nul", "w");
if (outfile == NULL)
{
fputs ("could not open 'nul'", stderr);
}
return 0;
}
(Créditos a Danny por este código; copiado de su mensaje).
También puede usar este archivo especial "nul" a través de la redirección.
C:\devdirectorio en Windows y utilizas muchas utilidades GNU, eventualmente adquirirás un archivo misterioso llamado nulo en ese directorio.
NULen Windows parece ser en realidad una ruta virtual en cualquier carpeta. Al igual que .., .en cualquier sistema de archivos.
Usar cualquier carpeta seguida de NUL funcionará.
Ejemplo,
echo 1 > nul
echo 1 > c:\nul
echo 1 > c:\users\nul
echo 1 > c:\windows\nul
tener el mismo efecto que /dev/nullen Linux.
Esto fue probado en Windows 7, 64 bit.
md \\.\c:\nul quora.com/... , gohacking.com/how-to-create-con-folder-in-windows , superuser.com/questions/86999/...
nul
Jon Skeet está en lo correcto. Aquí está la página del controlador de dispositivo Nul en la documentación de Windows Embedded (no tengo idea de por qué no está en otro lugar ...).
Aquí está otro:
NULfunciona programáticamente también. Por ejemplo, lo siguiente:
freopen("NUL", "w", stderr);
funciona como se espera sin crear un archivo. (MSVC ++ 12.0)
NUL, y fue más allá de ese punto hace 5 años.
Si necesita realizar en Microsoft Windows el equivalente de un enlace simbólico a /dev/nullen Linux, debe abrir y administrador cmdy escribir:
Para archivos:
mklink c:\path\to\file.ext NUL:
O, para directorios:
mklink /D c:\path\to\dir NUL:
Esto mantendrá el archivo / directorio siempre en 0 bytes y aún así devolverá el éxito a cada intento de escritura.
Debe usar start y $ NUL para esto en Windows PowerShell :
Escriba este comando asumiendo que mySumes el nombre de su aplicación y que 5 10son argumentos de línea de comando que está enviando.
start .\mySum 5 10 > $NUL 2>&1
El startcomando iniciará un proceso separado, un efecto similar a &. La /Bopción evita que el inicio abra una nueva ventana de terminal si el programa que está ejecutando es una aplicación de consola. y NULes el equivalente de Windows de /dev/null. Al 2>&1final redirigirá stderr a stdout, que irá a todos NUL.