import os from pathlib import Path def gebos_backup(base_dir=None): if base_dir is None: base_dir = 'E:\\GEBOS' source_path = Path(base_dir) / 'data' target_path = base_dir + '/archive' for source_file in source_path.glob('*.csv'): # print(source_file) table, timestamp = source_file.name.split('2', 1) timestamp = '2' + timestamp year = timestamp[:4] month = timestamp[4:6] target = Path(f"{target_path}/{year}/{table}/{year}-{month}/{source_file.name}").absolute() os.makedirs(target.parent, exist_ok=True) if target.exists(): target.unlink() print(target) source_file.rename(target) if __name__ == '__main__': gebos_backup()