FC - Comparar archivos

Mantenido el

Es habitual querer ver qué ha cambiado después de editar un archivo de configuración, o comprobar si una copia de seguridad es idéntica al archivo actual.

El comando FC compara dos archivos y muestra dónde se diferencian. No necesitas instalar una herramienta de diferencias; el Símbolo del sistema basta para una comprobación rápida.

Uso básico

Indica a FC los dos archivos que quieres comparar.

FC [opciones] archivo1 archivo2

Cuando los archivos son idénticos

Si el contenido es el mismo, se muestra lo siguiente.

- □ ×
Í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>fc old.txt new.txt
Comparando los archivos old.txt y new.txt
FC: no se encuentran diferencias
C:\users\user>

Cuando los archivos son distintos

Si el contenido difiere, se muestra cada sección distinta de cada archivo, separadas por *****.

- □ ×
Í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>fc old.txt new.txt
Comparando los archivos old.txt y new.txt
***** old.txt
port=8080
mode=debug
log=on
***** new.txt
port=8080
mode=release
log=on
*****
C:\users\user>
おすすめ書籍※ 広告を含む場合があります
中小企業経営者のためのRPA入門 RPA導入を成功させる方法

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

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

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

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

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

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

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

En este ejemplo, mode=debug en old.txt ha pasado a ser mode=release en new.txt. También se muestran algunas líneas coincidentes antes y después de la diferencia.

La salida depende de tu entorno

El texto de los mensajes depende del idioma de visualización de Windows. Aquí se usa la salida en español.

En PowerShell, escribe fc.exe

En PowerShell, fc es un alias de Format-Custom, por lo que los comandos de este artículo no funcionarán tal cual. Escribe fc.exe al usarlo desde PowerShell.

Opciones de FC

Estas son las opciones más usadas.

OpciónDescripción
/BCompara en binario, byte a byte
/CIgnora mayúsculas y minúsculas
/NMuestra los números de línea (comparación de texto)
/WTrata las secuencias de espacios y tabulaciones como un solo espacio e ignora los espacios iniciales y finales
/TNo expande las tabulaciones a espacios
/LCompara como texto ASCII
/UCompara como texto Unicode (UTF-16)
/AMuestra solo la primera y la última línea de cada sección distinta
/LBnEstablece el máximo de líneas consecutivas distintas (por defecto, 100)
/nnnnEstablece cuántas líneas consecutivas deben coincidir tras una diferencia para resincronizar (por defecto, 2)

/C - Ignorar mayúsculas y minúsculas

Por defecto se distingue entre mayúsculas y minúsculas. Añade /C para ignorarlas.

- □ ×
Í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>fc /C old.txt new.txt

/N - Mostrar números de línea

Añade /N para ver qué líneas difieren.

- □ ×
Í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>fc /N old.txt new.txt
Comparando los archivos old.txt y new.txt
***** old.txt
1: port=8080
2: mode=debug
3: log=on
***** new.txt
1: port=8080
2: mode=release
3: log=on
*****
C:\users\user>
/N ayuda con archivos largos

En un archivo largo, los números de línea permiten ir directamente al punto exacto en tu editor. Omítelo si no lo necesitas.

/W - Ignorar diferencias de espacios

Los archivos que solo difieren en la sangría o en el número de espacios dentro de una línea se consideran distintos por defecto. Con /W, las secuencias de espacios y tabulaciones se tratan como un solo espacio y se ignoran los espacios iniciales y finales, de modo que estas diferencias se omiten. Sin embargo, que haya o no espacio sigue contando como diferencia.

- □ ×
Í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>fc /W old.txt new.txt

/B - Comparar archivos binarios

Para archivos que no son de texto, como imágenes o ejecutables, añade /B para comparar byte a byte.

- □ ×
Í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>fc /B backup.zip current.zip
Comparando los archivos backup.zip y current.zip
00000042: 1F 2A
00000043: 8B 00
C:\users\user>

Cada línea muestra «posición desde el inicio (hexadecimal): byte del archivo 1, byte del archivo 2». En el ejemplo, los bytes en los desplazamientos 0x42 y 0x43 difieren (los desplazamientos empiezan en 0). Si los archivos tienen distinta longitud, se muestra un mensaje que lo indica y el código de salida también señala una diferencia.

El modo de comparación depende de la extensión

Los archivos con extensión .exe, .com, .sys, .obj, .lib y .bin se comparan en binario aunque no uses /B. El resto se compara con /L (comparación de texto ASCII).

/U - Comparar texto Unicode (UTF-16)

En archivos de texto guardados en UTF-16, la comparación ASCII por defecto muestra las diferencias con caracteres ilegibles. En ese caso, añade /U.

- □ ×
Í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>fc /U utf16-a.txt utf16-b.txt
Ojo con la codificación

Al comparar archivos con codificaciones distintas (por ejemplo UTF-8 y Shift_JIS), se informa de diferencias aunque el texto sea el mismo. Unifica la codificación antes de comparar. Consulta los artículos relacionados para más información sobre codificaciones.

Comparar varios archivos con comodines

Puedes usar comodines como * y ? en los nombres de archivo. Por ejemplo, puedes comparar de una vez los archivos de texto con el mismo nombre de dos carpetas.

- □ ×
Í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>fc C:\backup\*.txt C:\work\*.txt
FC no compara carpetas de forma recursiva

FC solo compara los archivos que están directamente en las carpetas indicadas. Para comparar carpetas completas con sus subcarpetas, puedes combinar Compare-Object de PowerShell con Get-ChildItem y Get-FileHash. Ten en cuenta que robocopy /L (solo lista, sin copiar) informa de archivos nuevos, actualizados y ausentes según el tamaño y la fecha de modificación; no compara el contenido.

Comprobar la coincidencia con el código de salida

FC informa del resultado mediante un código de salida (ERRORLEVEL). Puedes usarlo en un archivo por lotes para decidir si dos archivos son idénticos.

Código de salidaSignificado
0Los archivos son idénticos
1Los archivos son distintos
2No se encontró al menos uno de los archivos
-1Sintaxis no válida
@echo off
fc /B "%~1" "%~2" >nul
if %errorlevel%==0 (
  echo Los archivos son identicos.
) else if %errorlevel%==1 (
  echo Los archivos son distintos.
) else (
  echo No se encontro un archivo o los argumentos no son validos.
)

Como solo importa el veredicto, la salida de la comparación se descarta con >nul.

if errorlevel 1 también es verdadero para 2 o más

if errorlevel 1 es verdadero cuando el código de salida es 1 o superior, así que también coincide con 2 (archivo no encontrado), mientras que -1 es falso. En este ejemplo se compara el valor directamente, como en %errorlevel%==0.

Guardar el resultado en un archivo

Para conservar las diferencias como informe, guárdalas con redirección.

- □ ×
Í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>fc /N old.txt new.txt > diff.txt

Ejemplos prácticos

Ver qué cambiaste en un archivo de configuración

Copia el archivo antes de editarlo y luego compáralo.

- □ ×
Í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 config.ini config.ini.bak

Después de editar, comprueba las diferencias.

- □ ×
Í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>fc /N config.ini.bak config.ini

Verificar una copia

Tras copiar un archivo grande, comprueba que coincide con el original. Puede tardar en archivos grandes.

- □ ×
Í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>fc /B D:\data\archive.zip E:\backup\archive.zip

Resumen

ObjetivoComando
Comparar dos archivosfc archivo1 archivo2
Ignorar mayúsculasfc /C archivo1 archivo2
Mostrar números de líneafc /N archivo1 archivo2
Ignorar espaciosfc /W archivo1 archivo2
Comparar en binariofc /B archivo1 archivo2
Comprobar la coincidenciafc ... >nul y %errorlevel%

Artículos relacionados

Cuestionario

Problema de práctica

¿Qué comando compara dos archivos de texto y muestra los números de las líneas que difieren?

回答がサーバーに送信されることはありません
Problema de práctica

¿Qué código de salida devuelve FC cuando los dos archivos son exactamente idénticos?

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