@vadimeasy

Как переместить файл с определенным расширением из одной папки в другую?

Добрый день, делаю программу для автоматизации и мне нужно перемещать файлы из одной папки в другую с определенным расширением.
Вот код:
source_path = (r'C:/Users/kolom/Desktop/Main programm/Auto_EGAIS/exe/.*ovpn')
destination_path = (r'C:/Program Files/OpenVPN/config')
shutil.copy2 (source_path, destination_path)

После запуска получаю ошибку:
Traceback (most recent call last):
  File "c:\Users\kolom\Desktop\Main programm\Auto_EGAIS\exe\main.py", line 13, in <module>
    shutil.copy2 (source_path, destination_path)
  File "C:\Users\kolom\AppData\Local\Programs\Python\Python39\lib\shutil.py", line 443, in copy2
    copyfile(src, dst, follow_symlinks=follow_symlinks)
  File "C:\Users\kolom\AppData\Local\Programs\Python\Python39\lib\shutil.py", line 265, in copyfile
    with open(src, 'rb') as fsrc, open(dst, 'wb') as fdst:
OSError: [Errno 22] Invalid argument: 'C:/Users/kolom/Desktop/Main programm/Auto_EGAIS/exe/.*ovpn'

Помогите разобраться в чём причина?
  • Вопрос задан
  • 775 просмотров
Решения вопроса 1
drygdryg
@drygdryg
Python-разработчик
Используйте модуль glob из стандартной библиотеки для поиска файлов, соответствующих шаблону. В переменную files_to_copy будут помещены все файлы в папке (с полным путём), которые оканчиваются на ".ovpn":
import glob
import shutil

files_to_copy = glob.glob('C:/Users/kolom/Desktop/Main programm/Auto_EGAIS/exe/*.ovpn')
destination_path = (r'C:/Program Files/OpenVPN/config/')
for file in files_to_copy:
    shutil.copy2(file, destination_path)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы