Сообщить об ошибке.

Модуль shutil в Python, операций над файлами/каталогами

Копирование, удаление и архивирования файлов и директорий

Модуль shutil предлагает ряд высокоуровневых операций над файлами и коллекциями файлов. В частности, предусмотрены функции, которые поддерживают копирование и удаление файлов. Для операций над отдельными файлами, смотрите модуль os.

Предупреждение.
Даже функции копирования файлов более высокого уровня shutil.copy(), shutil.copy2() не могут копировать все метаданные файла.

  • На платформах POSIX это означает, что владелец файла и группа будут потеряны, а также ACL.
  • В Mac OS ветвь ресурса и другие метаданные не используются. Это означает, что ресурсы будут потеряны, а тип файла и коды создателей будут неправильными.
  • В Windows владельцы файлов, списки ACL и альтернативные потоки данных не копируются.

Начиная с Python-3.8 все функции, включающие в себя функцию копирования файлов shutil.copyfile(), shutil.copy(), shutil.copy2(), shutil.copytree() и shutil.move(), могут использовать системные вызовы fast-copy для конкретной платформы, чтобы копировать файл более Эффективно. "Быстрое копирование" означает, что операция копирования происходит внутри ядра, избегая использования буферов пространства пользователя в Python.

Если операция быстрого копирования завершится неудачно и данные в файл назначения не будут записаны, модуль shutil автоматически откажется от использования менее эффективной функции copyfileobj().