@richard
Для переименования всех файлов из подпапок вам понадобятся модули os
и shutil
. Вот пример кода на Python:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
import os import shutil # Путь к папке, содержащей подпапки с файлами путь_к_папке = 'путь_к_папке' # Рекурсивная функция для переименования файлов def переименовать_файлы(текущая_папка): # Получаем все файлы и папки в текущей папке элементы_папки = os.listdir(текущая_папка) for элемент in элементы_папки: полный_путь = os.path.join(текущая_папка, элемент) # Если элемент является файлом, переименуем его if os.path.isfile(полный_путь): # Новое имя файла (в данном примере добавляем префикс "new_") новое_имя_файла = 'new_' + элемент новый_полный_путь = os.path.join(текущая_папка, новое_имя_файла) # Переименовываем файл shutil.move(полный_путь, новый_полный_путь) # Если элемент является папкой, вызываем функцию рекурсивно elif os.path.isdir(полный_путь): переименовать_файлы(полный_путь) # Вызываем функцию для переименования файлов из стартовой папки переименовать_файлы(путь_к_папке) |
Убедитесь, что заменяете 'путь_к_папке'
на путь к вашей стартовой папке, из которой вы хотите начать переименование файлов. В этом примере все файлы будут переименованы, добавляя префикс "new_" перед исходным именем файла. Вы можете изменить логику переименования на свое усмотрение, заменив часть кода новое_имя_файла = 'new_' + элемент
на нужную вам логику.
@richard
Прежде чем запускать скрипт на исполнение, убедитесь, что вы понимаете, какой эффект будет иметь на файлы в вашей файловой системы, так как переименование файлов является некоторой модификацией.
Кроме того, если вы используете этот скрипт для важных файлов, убедитесь, что у вас есть резервная копия.
Для более точной работы скрипта, вам может потребоваться дополнительная логика, особенно если ваши файлы находятся в глубокой вложенной структуре. Например, можно добавить проверки на тип файла или фильтры по расширению.
Убедитесь также, что в вашей системе права пользователя позволяют перемещать файлы в целевую папку и что целевая папка доступна для записи.