Как узнать полный путь к папке, по окончанию и скопировать содержимое
Итак, в папке по этому пути C:\Users\Server\AppData\Roaming\Spotify\Users есть много папок, но мне нужно узнать название всех папок с окончанием -user, вот как они называются у меня eg9no0brqmzrmfy6crh7e7fsy-user и rplc59ty0gmhfy4q8tgaz8gyt-user мне по окончанию -user нужно узнать название папки, и скопировать её содержимое в другую папку
Ответы (1 шт):
Автор решения: Roman Bolshevik
→ Ссылка
Всё посредством одной библиотеки os. Да, понимаю, что примение os.system является не очень хорошим тоном, но питоновская работа с копированием папок просто ужасна. Так что это лучше и понятней. Копирование папок здесь для Linux. В Windows чуть по-другому
import os
BASE_DIR = '/Ваша папка/'
TARGET_DIR = '/Ваша папка назначения/'
all_dirs = [x[1] for x in os.walk(BASE_DIR)][0]
user_dirs = list(filter(lambda x: x.endswith('-user'), all_dirs))
user_dirs = list((BASE_DIR + x) for x in user_dirs)
# Для Linux
for dir_ in user_dirs:
os.system(f'cp -r {dir_} {TARGET_DIR}')
# Для Windows
for dir_ in user_dirs:
os.system(f'xcopy {dir_} {TARGET_DIR}')