假设我有一些文件夹结构:
\\some_location\{store_code}\{generation_date}\[generated_files]
现在我想将结构重新排列为以下内容:
\\some_location\{generation_date}\{store_code}\category\[generated_files]
手动执行此操作会花费一些时间,因为其中有很多文件,所以我想使用某种脚本(powershell,bash,python)来执行此操作。
在描述的结构中,some_location
和category
是固定的文件夹名称,[generated_files]
是我由某些系统生成的文件(假设所有生成的文件都是{{1} }文件,并且那里没有子目录。
我的一个主意是检索我拥有的所有文件的绝对所有路径,为所有文件生成新的文件夹路径(也将.pdf
替换为some_location
)并保留这些值以some_location_new
作为键,old_path
作为值的某种字典形式存在。然后,只需循环字典键,然后为每个元素检查是否存在新的文件夹结构,如果不存在则创建它,然后将文件移到新位置。
此实现方式存在的问题是将字典保留在内存中,并且我想要某种通用的解决方案来消除将某些内容保留在内存中的必要性。
有什么想法吗?