-3

ディレクトリ内の .txt ファイルを 1 つずつ検証するバッチ ファイルをプログラミングしています。ファイルが複製されている場合、この複製ファイルは別のディレクトリに移動されます。それを行うよりもはるかに速い方法が存在するかどうか、誰か教えてもらえますか?

前もって感謝します!

4

2 に答える 2

2

名前ではなく、テキスト ファイルの内容を比較するつもりだったとします。

@echo off
setlocal enabledelayedexpansion
for %%x in (*.txt) do for %%y in (*.txt) do (
  if "%%~x" neq "%%~y" (
    echo n | comp "%%~x" "%%~y"
    if !errorlecel!==0 (
      echo Duplicat found.
      set newDir=%%~nx_Duplicate
      if not exist "!newDir!" md "!newDir!"
      move "%%~y" "!newDir!"
    )
  )
)

上記のコードは、各ファイルの重複を検索し、FILENAME_Duplicate などの名前のディレクトリに配置します。したがって、比較thisfile.txtthatfile.txtて重複が見つかった場合は、thatfile.txtというディレクトリに移動しthisfile_Duplicateます。

于 2012-09-04T19:20:28.433 に答える
1

md5sum ( http://en.wikipedia.org/wiki/Md5sum ) を使用してすべてのファイルのチェックサムを作成し、ファイルの代わりにチェックサムを比較します。それはずっと速くなります。

于 2012-09-06T09:55:23.000 に答える