Crear archivo vacío

Mantenido el

A veces necesitas un archivo vacío en un archivo por lotes o en el símbolo del sistema, por ejemplo como archivo marcador que indica que un proceso ha terminado, o para inicializar un archivo de registro.

Esta página presenta tres formas de crear un archivo vacío, con código para copiar y pegar.

Resumen: ¿qué método usar?

MétodoTamaño del archivoSi el archivo ya existe
type nul > archivo0 bytesSe sobrescribe (se pierde el contenido)
copy nul archivo0 bytesEn el símbolo del sistema pide confirmación; dentro de un archivo por lotes sobrescribe sin preguntar
echo;>archivo2 bytes (solo un salto de línea)Se sobrescribe (se pierde el contenido)

Si necesitas un archivo de 0 bytes exactos, usa type nul o copy nul.

チェック

Cualquiera de estos métodos puede borrar el contenido de un archivo existente con el mismo nombre. Si quieres conservarlo, consulta la sección “Cómo evitar sobrescribir un archivo existente”.

Usando type

El comando type normalmente muestra el contenido del archivo indicado como argumento.

Uso
type C:\Users\Public\Documents\sample.txt

Si indicas un destino de redirección con >, la salida se escribe en ese archivo.

Usando
type C:\Users\Public\Documents\sample.txt > C:\Users\Public\Documents\sample2.txt

El comando anterior copia el contenido de sample.txt en sample2.txt.

Aprovechando esto, si pasas nul a type se crea un archivo sin contenido. nul es un nombre de dispositivo especial que no produce salida y se lee como vacío.

Crear
type nul > <nombre_del_archivo_nuevo>

type nul > %nombre_archivo%

A continuación hay un ejemplo para copiar y pegar. Cambia las variables FOLDER y FILE por la carpeta y el nombre de archivo que quieras.

Símbolo del sistema (se puede copiar):

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>type nul > %userprofile%\Documents\empty.file

En un archivo por lotes:

Ejemplo
@echo off
setlocal

set FOLDER=%userprofile%\Documents\
set FILE=test.out

type nul > "%FOLDER%%FILE%"

endlocal
exit /b

Usando copy

El comando copy copia archivos.

Uso
copy A B

El comando anterior copia el archivo A al archivo B.

También puedes crear un archivo vacío con copy indicando nul como origen.

Crear
copy nul <nombre_del_archivo_nuevo>

El comando muestra “1 archivo(s) copiado(s)”. Para ocultar el mensaje, añade >nul al final.

copy nul %nombre_archivo%

Símbolo del sistema (se puede copiar):

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>copy nul %userprofile%\Documents\empty.file
おすすめ書籍※ 広告を含む場合があります
中小企業経営者のためのRPA入門 RPA導入を成功させる方法

中小企業経営者のためのRPA入門 RPA導入を成功させる方法

60分でわかる! AIエージェント 超入門

60分でわかる! AIエージェント 超入門

コマンドラインの黒い画面が怖いんです。

コマンドラインの黒い画面が怖いんです。

知識・才能ゼロでもらく~に月10万円稼ぐ! よくわかるAI副業超入門

知識・才能ゼロでもらく~に月10万円稼ぐ! よくわかるAI副業超入門

En un archivo por lotes:

Ejemplo
@echo off
setlocal

set FOLDER=%userprofile%\Documents\
set FILE=test.out

copy nul "%FOLDER%%FILE%" >nul

endlocal
exit /b

Para más información sobre el comando copy, consulta la siguiente página:

Usando echo

El conocido comando echo también puede crear un archivo. Sin embargo, no crea un archivo completamente vacío; se escriben 2 bytes de datos.

Podrías querer escribir echo nul>nombre_archivo, pero nul se trata como la cadena “nul”, y la palabra “nul” se escribiría en el archivo.

En su lugar, usa echo;, que solo emite un salto de línea:

Crear
echo;>nombre_archivo

El archivo resultante contiene solo un salto de línea (CRLF), por lo que ocupa 2 bytes. Esto no es un problema si solo necesitas que el archivo exista, por ejemplo como comprobación de existencia.

echo;>%nombre_archivo%

Símbolo del sistema (se puede copiar):

- □ ×
Ícono de la consola de comandos
Consola de comandos
Microsoft Windows [Version xx.x.xxxxx.xxx]
(c) 2026 Ribbit App Development All rights reserved.
 
C:\users\user>echo;>%userprofile%\Documents\empty.file

En un archivo por lotes:

Ejemplo
@echo off
setlocal

set FOLDER=%userprofile%\Documents\
set FILE=test.out

echo;>"%FOLDER%%FILE%"

endlocal
exit /b

Para más información sobre el comando echo, consulta la siguiente página:

チェック

Todos los métodos fallan si la carpeta de destino no existe. Para crear carpetas, consulta

.

Cómo evitar sobrescribir un archivo existente

La redirección con > borra el contenido de un archivo existente. Para crear el archivo solo si no existe y dejarlo intacto en caso contrario, usa >> (anexar):

Crear
type nul >> sample.txt

Como no se anexa nada, el contenido existente se conserva, y si el archivo no existe se crea vacío.

También puedes combinarlo con if not exist. Para comprobar si un archivo existe, consulta la siguiente página:

Nota: crear un archivo de un tamaño concreto (fsutil)

Si necesitas un archivo de tamaño fijo para pruebas, usa fsutil file createnew. El contenido se rellena con ceros. Requiere un símbolo del sistema ejecutado como administrador.

Crear
fsutil file createnew sample.bin 1024

fsutil file createnew produce un error si el archivo ya existe; no lo sobrescribe.

Nota: usando PowerShell

En PowerShell, usa el cmdlet New-Item para crear un archivo vacío.

Crear
New-Item sample.txt -ItemType File

Prueba de confirmación

Problema de práctica

¿Cuál de los siguientes comandos crea un archivo sample.txt que no tiene 0 bytes?

回答がサーバーに送信されることはありません
#Símbolo del sistema #Archivo por lotes #Comando