Форум сайта python.su
Добрый день!
Нужен скрипт, который бы подсчитывал кол-во файлов в дирректории, и в ней удалял файлы, не стирая подпапки.
Цель: Создание скрипта, удаляющего файлы в указанной дирректории, без удаления подпапок, и вывод в report.txt: 20.07.2018 Задача: Очистка папки Название* 22:00 Выполнено, удалено: Кол-во файлов*
В Идеале еще иметь закомментированный кусок кода где можно было б прописывать путь к папке которую не тереть.
Может у кого что то готовое есть?
Скрипт на Windows будет запускаться
P.S. Cash reward is possible
Отредактировано ITadm_ptn (Июль 20, 2018 10:49:53)
Офлайн
https://stackoverflow.com/questions/185936/how-to-delete-the-contents-of-a-folder-in-python
[code python][/code]
Офлайн
import os, shutil
folder = ‘/path/to/folder’
for the_file in os.listdir(folder):
file_path = os.path.join(folder, the_file)
try:
if os.path.isfile(file_path):
os.unlink(file_path)
#elif os.path.isdir(file_path): shutil.rmtree(file_path)
except Exception as e:
print(e)
источник: http://python.su/forum/topic/35588/
Кто может разжевать по полкам чего он делает?
Офлайн
import os, shutil # импорт модулей os, shutil folder = '/path/to/folder' # переменная где храним путь к папке for the_file in os.listdir(folder): # для каждого элемента the_file в папке folder file_path = os.path.join(folder, the_file) # плоучаем полный путь к файлу try: if os.path.isfile(file_path): # Если это файл os.unlink(file_path) # пробуем его удалить except Exception as e: #если удалить не вышло print(e) # выводим текст ошибки
[code python][/code]
Офлайн
это где половина от того что нужно, как реализовать подсчет файлов, и вывод сообщения как описано в шаке?
я так понимаю перед try, должен быть подсчет файлов,
а вывод после последней записи print (e):?
а эта запись - #elif os.path.isdir(file_path): shutil.rmtree(file_path) ?
Офлайн
ITadm_ptnзакоментировано, если это папка то удалить всю папку и все подпапки в ней
а эта запись - #elif os.path.isdir(file_path): shutil.rmtree(file_path)
ITadm_ptnПодсчет реализуется счетчиком (отдельная перменная к которой добавляем 1 если это файл).
как реализовать подсчет файлов, и вывод сообщения как описано в шаке?
[code python][/code]
Офлайн