У меня 400 папок. В каждой папке есть 3 дополнительные папки, в которые мне нужно перейти, а затем в последней папке у меня 22 разных файла. Каждая из этих 400 папок имеет одинаковые имена файлов. В конечном итоге я хочу создать 22 папки, по одной для каждого имени файла, и в каждой из 22 папок мне нужны только файлы с одинаковыми именами. Поскольку в папке не может быть двух файлов с одинаковым именем, добавление последних 6 символов пути к имени файла решает проблему.
Используя изображение ниже в качестве примера файлов:
I need an ACO folder with 400 files all of which are labeled i.e., "ACO050168", "ACO150074", "ACO150128"
I need an BDUAL folder with 400 files all of which are labeled BDUAL i.e., "BDUAL050168", "BDUAL150074", "BDUAL150128"
etc..
Вот, например, пути к файлам, обратите внимание, что последняя и четвертая папки из последней папки уникальны
'C:\\Users\\MBobak\\Documents\\Loop\\Raw Claims Data 050168\\D#CJR\\Y2018M02\\P050168',
'C:\\Users\\MBobak\\Documents\\Loop\\Raw Claims Data 150074\\D#CJR\\Y2018M02\\P150074',
'C:\\Users\\MBobak\\Documents\\Loop\\Raw Claims Data 150128\\D#CJR\\Y2018M02\\P150128'
22 файла в каждой папке структурированы как .csv
, но не имеют расширения .csv
. Они просто files
. Я приложил изображение, чтобы показать, как оно выглядит.
Я знаю, что есть способы сделать это в командной строке, но я не могу найти конкретный пример этого вопроса, поскольку в каждой начальной папке есть детализация.
Я попытался сделать это на python, и я написал небольшой скрипт на python, чтобы найти окончательные каталоги, которые содержат 22 файла:
all_files_dir = r'C:\Users\MBobak\Documents\Loop'
folders = os.listdir(all_files_dir)
ccn_list = [x[-6:] for x in folders]
ccn_file_dir = [r'C:\Users\MBobak\Documents\Loop\Raw Claims Data ' + x + '\D#CJR\Y2018M02\P' + x for x in ccn_list]
Но теперь у меня проблемы с копированием / перемещением в новые папки.