簡単な方法(おそらくfind
を含むコマンドまたは一連のコマンド)を探しています )2つのディレクトリで重複ファイルを検索し、一方のディレクトリのファイルをもう一方のディレクトリのファイルのハードリンクに置き換えます。
状況は次のとおりです。これは、複数のユーザーがオーディオファイルを保存するファイルサーバーであり、各ユーザーは独自のフォルダを持っています。複数の人がまったく同じオーディオファイルのコピーを持っている場合があります。現在、これらは重複しています。ハードドライブのスペースを節約するために、ハードリンクになるようにしたいのです。
承認された回答:
http://cpansearch.perl.org/src/ANDK/Perl-Repository-APC-2.002/eg/trimtrees.plにperlスクリプトがあり、これはまさにあなたが望むことを実行します:
コマンドラインで指定されたすべてのディレクトリをトラバースし、MD5チェックサムを計算して
、同一のMD5を持つファイルを見つけます。
それらが等しい場合は、実際の比較を行います
本当に等しい場合は、
2つのファイルの2番目を
最初のファイルへのハードリンクに置き換えます。