" ¿Cómo crear un archivo de texto vacío a partir de un archivo por lotes? " (2008) también señala:
type NUL > EmptyFile.txt
# also
echo. 2>EmptyFile.txt
copy nul file.txt > nul # also in qid's answer below
REM. > empty.file
fsutil file createnew file.cmd 0 # to create a file on a mapped drive
Nómada menciona una original :
C:\Users\VonC\prog\tests>aaaa > empty_file
'aaaa' is not recognized as an internal or external command, operable program or batch file.
C:\Users\VonC\prog\tests>dir
Folder C:\Users\VonC\prog\tests
27/11/2013 10:40 <REP> .
27/11/2013 10:40 <REP> ..
27/11/2013 10:40 0 empty_file
(Respuesta original, noviembre de 2009)
echo.>filename
( echo ""
en realidad pondría "" en el archivo! Y echo
sin el "." pondría " Command ECHO activated
"en el archivo...)
Nota: el archivo resultante no es vacía pero incluye una secuencia de línea de retorno: 2 bytes.
Este discusión apunta a una verdadera solución por lotes para una verdadera vacía archivo:
<nul (set/p z=) >filename
dir filename
11/09/2009 19:45 0 filename
1 file(s) 0 bytes
El " <nul
" tubos a nul
respuesta a la set/p
que causará que el variable solía permanecer sin cambios. Como es habitual con set/p
la cadena para el el derecho del signo igual se muestra como un aviso sin CRLF.
Como aquí la "cadena a la derecha del signo igual" está vacía... el resultado es un archivo vacío.
La diferencia con cd. > filename
(que se menciona en La respuesta de Patrick Cuff y también produce un archivo de 0 bytes de longitud) es que este "poco de redireccionamiento" (el <nul...
truco) puede utilizarse para líneas de eco sin ningún tipo de CR :
<nul (set/p z=hello) >out.txt
<nul (set/p z= world!) >>out.txt
dir out.txt
El comando dir debe indicar el tamaño del archivo como 12 bytes: " hello world!
".