私は、次のことを行うバッチ ファイルを作成するという簡単なタスクを自分自身に与えました。
「first」フォルダの各ファイルと「second」フォルダの各ファイルの CRC32 を比較します。出力は、「最初の」フォルダーからのすべてのファイルの名前である必要があり、「2 番目の」フォルダーには重複がありません。
注: 「CRC32.exe -nf」は、1 行目に CRC32 を出力し、2 行目にファイル サイズを出力します。
これが私がそれをやろうとした方法です:
@echo off
for %%i in ("%cd%\first\*.*") do (
set uniq=0
for /f %%x in ('crc32 %%i -nf') do (
set one=%%x
goto find_two
)
:find_two
for %%j in ("%cd%\second\*.*") do (
for /f %%x in ('crc32 %%j -nf') do (
set two=%%x
goto compare
)
:compare
if one==two (
goto next
) else (
set uniq=1
)
)
if uniq==1 (
echo %%i >>result.txt
)
:next
)
このコードにはいくつかのエラーがあると思いますが、見つけるのに苦労しました。誰かが時間に余裕があり、彼が助けることができると思うなら、私は感謝します.
別のアプローチが必要だと思われる場合は、遠慮なく示してください。