Comparing files in two folders using batch script

Thiru picture Thiru · Oct 1, 2013 · Viewed 12.4k times · Source

I have to compare the file in two folders which have file names like

folderA: [a.f90, b.f90, ...] folderB: [a_recoded.f90, b_recoded.f90, ...]

I wish to compare a.f90 in folderA with a_recoded.f90 in folderB.

what is used is:

@echo off
set folderA=D:\folderA
set folderB=D:\folderARenamed
set /a i=0
set /a j=0
cd %folderA%
FOR %%f in (*.f90) DO ( set /a i+=1 & for %%r in (%folderB%\*.f90) DO (set /a j+=1 & if %i% EQU %j% FC %%f %% r ) )

It doesn't help me, can anyone help me how to do this comparsion.

Answer

Endoro picture Endoro · Oct 1, 2013

try this:

@echo off &setlocal
set "folderA=D:\NONMEM7.3beta7.0"
set "folderB=D:\NONMEM7.3beta7.0Renamed"
for %%a in ("%folderA%\*.f90") do if not exist "%folderB%\%%~na_recoded%%~xa" echo %%~na_recoded%%~xa not found in %folderB%.
for %%a in ("%folderB%\*.f90") do for /f "delims=_" %%b in ("%%~na") do if not exist "%folderA%\%%~b%%~xa" echo %%~b%%~xa not found in %folderA%.