2つのディレクトリ構造を比較し、ターゲットの場所にある無関係なファイルとディレクトリを削除する最良の方法は何ですか?
私が開発している小さなウェブフォトギャラリーアプリがあります。ユーザーはFTPを使用して画像を追加および削除します。私が書いたWebギャラリーソフトウェアは、その場で新しいサムネイルを作成しますが、削除は処理しません。私がしたいことは、コマンド/ bashスクリプトをスケジュールして、事前定義された間隔でこれを処理します。
元の画像は/home/gallery/images/
サブディレクトリを使用してアルバムに保存され、アルバムに整理されます。サムネイルは/home/gallery/thumbs/
、画像ディレクトリと同じディレクトリ構造とファイル名を使用してにキャッシュされます。
私はこれを達成するために以下を使用してみました:
rsync -r --delete --ignore-existing /home/gallery/images /home/gallery/thumbs
すべてのサムネイルが既にキャッシュされている場合は正常に機能しますが、そうなるとサムディレクトリに元のフルサイズの画像がコピーされるという保証はありません。
私がやろうとしていることをどのように達成するのが最善ですか?
rmdir
?で置き換えます。