¿Alguien puede recordar cuál fue el comando para crear un archivo vacío en MSDOS usando el archivo BAT?
batch-file
cmd
dos
m_pGladiator
fuente
fuente

cmd.exe, ¿verdad?Set-Content "your_file.txt" .gitignore -Encoding utf8LÉAME : ¡ esto distingue entre mayúsculas y minúsculas y fuerza la codificación utf8! (También publiqué esto como respuesta).Respuestas:
fuente
.enecho.echo 2sin., la consola diría "ECHO está apagado". El usoecho. 2efectivamente silencia la salida de la consola al mostrar solo una nueva línea.DOS tiene algunos archivos especiales (dispositivos, en realidad) que existen en cada directorio,
NULsiendo el equivalente de UNIX/dev/null: es un archivo mágico que siempre está vacío y tira todo lo que le escribes. Aquí hay una lista de algunos otros;CONocasionalmente es útil también.Para evitar tener ningún resultado, puede usar
/yevitacopyque haga una pregunta que no puede ver cuando se envía la salidaNUL.fuente
copy /Y NULcomando, puede borrar el contenido existente. Si está acostumbrado altouchcomando de Unix , esto podría no ser lo que espera.) El usotype NUL >> emptyfile.txtes más seguro a este respecto.CON, aparte de la vinculada en esta respuesta. ¿Podría alguien compartir alguna lectura ligera?Después de leer las dos publicaciones anteriores, esta mezcla de las dos es lo que se me ocurrió. Parece un poco más limpio. No hay necesidad de preocuparse por redirigir los "1 archivos copiados". mensaje para
NUL, como lo hace la publicación anterior, y se ve bien al lado delECHO OutputLineFromLoop >> Emptyfile.txtque generalmente seguirá en un archivo por lotes.fuente
Técnicas que obtuve de otras respuestas:
Hace que un archivo de 0 bytes sea muy claro y compatible con versiones anteriores:
idea vía: anónimo , Danny Backett , posiblemente otros, inspirado por el trabajo de JdeBP
Un archivo de 0 bytes de otra manera , es compatible con versiones anteriores:
idea vía: Johannes
Un archivo de 0 bytes de tercera vía también compatible con versiones anteriores:
idea a través de: TheSmurf
Un archivo de 0 bytes de la forma sistemática probablemente disponible desde Windows 2000:
idea a través de: Emm
Un archivo de 0 bytes que sobrescribe archivos de solo lectura
idea a través de: copyitright
Una nueva línea nueva (2 bytes:
0x0D 0x0Aen notación hexadecimal , alternativamente escrita como\r\n):Nota: no hay espacio entre
echo,.y>.idea vía: ¿Cómo puedes repetir una nueva línea en archivos por lotes?
editar Parece que cualquier comando no válido redirigido a un archivo crearía un archivo vacío. je, una característica! compatibilidad: desconocido
Un archivo de 0 bytes: comando no válido / con un nombre aleatorio (compatibilidad: desconocido):
vía: gran fuente de azar por Hung Huynh
editar 2 Andriy M señala la forma probablemente más divertida / provocadora de lograr esto a través de un comando no válido
Un archivo de 0 bytes: comando no válido / the funky way (compatibilidad: desconocida)
idea a través de: Andriy M
Un archivo de 0 bytes que viene por cuarta vez :
idea vía: foxidrive gracias al comentario de Double Gras !
fuente
type nul ..., notype <nul ..., en realidad.NonExistentCommand <nul >EmptyFile.txty funcionóbreak > file.txtprops foxidrive>>si necesita "debe existir pero no debe truncarse si existe" (comotouchhace Unix )MOVIMIENTO RÁPIDO DEL OJO. > empty.file
fuente
REM., cmd responderá con "'rem' '. no se reconoce como un comando interno o externo, programa operativo o archivo por lotes ".rem/lugar derem.resolver ese problema ...Si existe la posibilidad de que el archivo a escribir ya exista y sea de solo lectura, use el siguiente código:
Si no existe ningún archivo, simplemente haga:
(código actualizado / modificado de acuerdo con el comentario de DodgyCodeException)
Para suprimir cualquier error que pueda surgir:
fuente
CD(sin extensión) en el directorio actual y escribeCD., cmd responderá con "'CD'. no se reconoce como un comando interno o externo, programa operativo o archivo por lotes ". Si en su lugar escribeCD .(con un espacio antes del punto) funcionará.fuente
Uno más para agregar a los libros: corto y dulce para escribir.
fuente
Puede usar un
TYPEcomando en lugar deCOPY. Prueba esto:Donde
File1.txtesta vaciofuente
type NUL>File2.txtTambién puede usar
SETpara crear unbytearchivo nulo de la siguiente maneraO si no desea crear una variable adicional, reasigne una variable existente como
o así:
fuente
Hay infinitos enfoques.
Comandos que no generan nada:
Comandos raros:
El
printcomando desactualizado produce un archivo en blanco:fuente
La forma más fácil es:
echo. > Filename.txtfuente
IMPORTANTE:
Si no configura la codificación, muchos softwares pueden romperse. git es un ejemplo muy popular.
Set-Content "your_ignore_file.txt" .gitignore -Encoding utf8esto distingue entre mayúsculas y minúsculas y fuerza la codificación utf8.fuente