Isso pode ser conseguido usando a construção || que só executa o comando no lado direito se o status de saída do comando no lado esquerdo for 0. Como o status de saída de fc é 0 se ele for encontrado sem diferenças, o comando cat não será executado.
fc file1.xyz file2.xyz > c:\temp\fc.out || cat c:\temp\fc.out
Se usado em um arquivo de lote, um @ deve ser prefixado para que a linha inserida não seja exibida:
@fc %1 %2 > c:\temp\fc.out || cat c:\temp\fc.out