0

バックアップが行われ、すべてのファイルとフォルダーが正しく移動されていない、異なるデータとファイルを持つ 2 つのフォルダーを比較しようとしています。2 つのデータ ソース dir1 と dir2 があり、スクリプトで dir1 のデータを検索する必要があります。フォルダーが存在しない場合はフォルダー全体を移動フォルダーの場所に移動しますが、存在する場合はフォルダーの内容を比較してから一致しないデータを移動フォルダーに移動し、同様のデータを削除フォルダーの場所に移動します。これを行うためにいくつかの方法を試してみましたが、行き詰まりました.2つのソース間でディレクトリを移動することしかできませんでしたが、2つのソース間でファイルを比較して移動するのはちょっと難しいです. フォーラムからさまざまな方法を試すのに時間を費やしましたが、まだうまくいきません. 今までのものを追加しました。ありがとうございました。

import os, shutil, filecmp, fnmatch, glob, zipfile, sys, time, re

dir1 = r'C:\ZZZ\Test1' dir2 = r'C:\ZZZ\Test2'

FolderMove = r'C:\ZZZ\Move' FolderDelete = r'C:\ZZZ\Delete'

from os.path import join, isfile

dir1_folders = [dir for dir in os.listdir(dir1) if os.path.isdir(os.path.join(dir1, dir))] dir2_folders = [dir for dir in os.listdir(dir2) if os.path.isdir(os.path.join(dir2, dir))]

for dir in dir1_folders: if dir not in dir2_folders: shutil.move(os.path.join(dir1, dir), os.path.join(FolderMove, dir)) print dir

for dir in dir1_folders: if dir in dir2_folders: shutil.move(os.path.join(dir1, dir), os.path.join(FolderDelete, dir)) print dir
4

0 に答える 0