Write a batch file that will start several text compares automatically

The example code in the following .bat file is hard coded to do three specific pairs of files, but with a little imagination you could add variables and a loop so that this will work for n number of files.

The gist of the process is:

  1. Write a script for Beyond Compare that will run a Beyond Compare session.

  2. Write a single batch/shell script that repeatedly calls the script you wrote in (1)

  3. Give a command in the terminal to start (2)

Step One

To make your Beyond Compare script, find one in Scooter Software's list of examples and then adapt it with Scooter's syntax guide. Wherever convenient, instead of fixed paths use %1, %2, et al as variables for arguments that can be entered later at the command-line.

My script here just compares one text file to another (%1 vs %2) and outputs the result to a location (%3).

file-report layout:side-by-side & options:display-mismatches & output-to:%3 %1 %2

Save this as fileToFile.bc

Step Two

Write one batch file that repeatedly calls your script from Step 1:

start BComp.exe /solo @fileToFile.bc tigers1.csv tigers2.csv report1.txt

start BComp.exe /solo @fileToFile.bc out1.html out1.html report2.txt

start BComp.exe /solo @fileToFile.bc chennai.bc actemium.bc report3.txt

Save this as threeTextCompares.bat

Step Three

In Windows, type and enter this at the command line:

threeTextCompares.bat

You should see three sessions of BC start up. Your results will be in the report1.txt, report2.txt, and report3.txt