Я делал это все время:Python Windows File Copy с поддержкой Wildcard
result = subprocess.call(['copy', '123*.xml', 'out_folder\\.', '/y'])
if result == 0:
do_something()
else:
do_something_else()
До сегодняшнего дня я начал смотреть в pywin32 модулей, то я видел такие функции, как win32file.CopyFiles(), но затем Я обнаружил, что это может не поддерживать копирование файлов в каталог. Возможно, эта функция где-то скрыта, но я ее еще не нашел.
Я также пробовал комбинацию «glob» и «shutil», но «glob» невероятно медленный, если есть много файлов.
Итак, как вы эмулируете эту команду Windows с помощью Python?
copy 123*.xml out_folder\. /y
Почему все эти проблемы с 'copyfile'? почему бы просто не использовать 'copy'? – SilentGhost
Почему. Я изменил пример, чтобы использовать копию вместо файла copy. Это также имеет дополнительное преимущество в том, что биты разрешения также копируются. – Frederik
Просто обратите внимание, что если входные файлы содержат пути, то имя файла назначения должно быть создано с помощью - join (dst_folder, os.path.basename (fname)) – geographika