fc

Compara dos archivos o conjuntos de archivos y muestra las diferencias entre ellos.

Sintaxis

fc /a [/c] [/l] [/lb<n>] [/n] [/off[line]] [/t] [/u] [/w] [/<nnnn>] [<drive1>:][<path1>]<filename1> [<drive2>:][<path2>]<filename2>
fc /b [<drive1:>][<path1>]<filename1> [<drive2:>][<path2>]<filename2>

Parámetros

Parámetro Descripción
/a Abrevia la salida de una comparación ASCII. En lugar de mostrar todas las líneas que son diferentes, fc muestra solo la primera y la última línea para cada conjunto de diferencias.
/b Compara los dos archivos en modo binario, byte por byte, y no intenta volver a sincronizar los archivos después de encontrar un error de coincidencia. Este es el modo predeterminado para comparar archivos que tienen las siguientes extensiones de archivo: .exe, .com, .sys, .obj, .lib o .bin.
/C Omite si la letra está en mayúscula o minúscula.
/l Compara los archivos en modo ASCII, línea a línea e intenta volver a sincronizar los archivos después de encontrar un error de coincidencia. Este es el modo predeterminado para comparar archivos, excepto los que tienen las siguientes extensiones de archivo: .exe, .com, .sys, .obj, .lib, o .bin.
/lb<n> Establece el número de líneas del búfer de línea interno en N. La longitud predeterminada del búfer de líneas es de 100 líneas. Si los archivos que está comparando tienen más de 100 líneas diferentes consecutivas, fc cancela la comparación.
/n Muestra los números de línea durante una comparación ASCII.
/off[line] No omite los archivos que tienen establecido el atributo sin conexión.
/t Impide que fc convierta tabulaciones en espacios. El comportamiento predeterminado es tratar las tabulaciones como espacios, con tabulaciones cada ocho caracteres.
/U Compara archivos como archivos de texto Unicode.
/w Comprime el espacio en blanco (es decir, tabulaciones y espacios) durante la comparación. Si una línea contiene varios espacios o tabulaciones consecutivos, /w trata estos caracteres como un único espacio. Cuando se usa con /w, fc omite el espacio en blanco al principio y al final de una línea.
/<nnnn> Especifica el número de líneas consecutivas que deben coincidir después de un error de coincidencia, antes de que fc considere que hay que volver a sincronizar los archivos. Si el número de líneas coincidentes en los archivos es menor que nnnn, fc muestra las líneas coincidentes como diferencias. El valor predeterminado es 2.
[<drive1>:][<path1>]<filename1> Especifica la ubicación y el nombre del primer archivo o conjunto de archivos que se va a comparar. filename1 es obligatorio.
[<drive2>:][<path2>]<filename2> Especifica la ubicación y el nombre del segundo archivo o conjunto de archivos que se va a comparar. filename2 es obligatorio.
/? Muestra la ayuda en el símbolo del sistema.

Comentarios

  • Este comando se implementa mediante c:\WINDOWS\fc.exe. Puede usar este comando en PowerShell, pero asegúrese de escribir el archivo ejecutable completo (fc.exe), ya que "fc" también es un alias para Format-Custom.

  • Cuando se usa fc para una comparación ASCII, fc muestra las diferencias entre dos archivos en el orden siguiente:

    • Nombre del primer archivo

    • Líneas de filename1 que difieren entre los archivos

    • Primera línea que debe coincidir en ambos archivos

    • Nombre del segundo archivo

    • Líneas de filename2 que difieren

    • Primera línea que debe coincidir

  • /b muestra errores de coincidencia que se encuentran durante una comparación binaria en la sintaxis siguiente:

    \<XXXXXXXX: YY ZZ>

    El valor de XXXXXXXX especifica la dirección hexadecimal relativa para el par de bytes, que se mide desde el principio del archivo. Las direcciones comienzan en 00000000. Los valores hexadecimales de YY y ZZ representan los bytes no coincidentes de filename1 y filename2, respectivamente.

  • Puede usar caracteres comodín (* y ?) en filename1 y filename2. Si usa un carácter comodín en filename1, fc compara todos los archivos especificados con el archivo o conjunto de archivos especificados por filename2. Si usa un carácter comodín en filename2, fc usa el valor correspondiente de filename1.

  • Al comparar archivos ASCII, fc usa un búfer interno (lo suficientemente grande como para contener 100 líneas) como almacenamiento. Si los archivos son mayores que el búfer, fc compara lo que puede cargar en el búfer. Si fc no encuentra ninguna coincidencia en las partes cargadas de los archivos, se detiene y muestra el mensaje siguiente:

    Resynch failed. Files are too different.

    Al comparar archivos binarios mayores que la memoria disponible, fc compara ambos archivos por completo, superponiendo las partes en memoria con las siguientes partes del disco. La salida es la misma que la de los archivos que caben completamente en la memoria.

Ejemplos

Para realizar una comparación ASCII de dos archivos de texto, monthly.rpt y sales.rpt, y mostrar los resultados en formato abreviado, escriba lo siguiente:

fc /a monthly.rpt sales.rpt

Para realizar una comparación binaria de dos archivos por lotes, profits.bat y earnings.bat, escriba lo siguiente:

fc /b profits.bat earnings.bat

Aparecen resultados similares a los siguientes:

00000002: 72 43
00000004: 65 3A
0000000E: 56 92
000005E8: 00 6E
FC: earnings.bat longer than profits.bat

Si los archivos profits.bat y earnings.bat son idénticos, fc muestra el mensaje siguiente:

Comparing files profits.bat and earnings.bat
FC: no differences encountered

Para comparar cada archivo .bat en el directorio actual con el archivo new.bat, escriba lo siguiente:

fc *.bat new.bat

Para comparar el archivo new.bat en la unidad C con el archivo new.bat en la unidad D, escriba lo siguiente:

fc c:new.bat d:*.bat

Para comparar cada archivo por lotes en el directorio raíz de la unidad C con el mismo nombre en el directorio raíz de la unidad D, escriba lo siguiente:

fc c:*.bat d:*.bat