別々のディレクトリツリーにある重複ファイルを削除するにはどうすればよいですか?


10

との2つのディレクトリがold/ありnew/ます。のファイルの一部は、のファイルのold/複製ですnew/。一部は単に同じ名前を持ち、一部は同じ内容で異なる名前を持つことさえあります。私はファイルへのサブディレクトリパスには興味がありません。したがって、一致するファイル名のみを考慮に入れる必要があります。

から重複ファイルを削除して、にold/もないファイルのみが含まれるようにしたいnew/。ファイル名は一致するが内容は一致しない場合、またはその逆の場合は、これをログに記録します。

誰かが同様の問題に遭遇しましたか、または(perlまたは同様の)スクリプトを最初からハッキングするより良い解決策がありますか?md5sum各ファイルを呼び出すことによって支配されるランタイムは許容されます。

回答:


7

もちろん!FSlintを確認してください

FSlintは、ファイルシステム上のさまざまな形式のlintを見つけてクリーンアップするためのユーティリティです。IEがファイルまたはファイル名に不要または問題のある情報を残している。たとえば、見つかったlintの1つの形式は重複ファイルです。GUIモードとコマンドラインモードの両方があります。

代替テキスト

FSlintは無料でオープンソースのソフトウェアです。


それは私が望むものに十分に近く見えます。ありがとう!
P-Nuts

8

fdupes-指定された一連のディレクトリで重複フ​​ァイルを検索します

fdupes new/ old/

-dは削除

-N要求しない

fdupes -N -d new/ old/

これは、各ディレクトリ内の重複も検出(および削除)しませんか?言い換えれば、新しい(または古い)に、古いファイル内で見つかるかどうかわからない重複ファイルが含まれている場合、それらも削除されますか?私は、fdupesが、厳密に「新しい」と「古い」という議論からわかるように、差分プログラムであるとは思わない。
Stephen Niedzielski 2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.