Скрипт для очистки каталога upload/iblock сайта на CMS 1С-Битрикс от неиспользуемых файлов (оставшихся после удаления элемента инфоблока).
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
README.md
clear_upload.php

README.md

bitrix-clear-upload

Скрипт для очистки каталога upload/iblock сайта на CMS 1С-Битрикс от неиспользуемых файлов (оставшихся после удаления элемента инфоблока).

Описание

Скрипт для очистки каталога upload/iblock от неиспользуемых файлов, которые могут оставаться после удаления элемента инфоблока и, особенно, многократных обменов с 1С.

Скрипт проверяет каждый файл в каталоге upload/iblock, есть ли он в таблице b_file и если его там нет выводит полный путь к нему на экран.

Возможные опции

--move-file=/путь: перемещает файл в указанную директорию с сохранением иерархии.

--delete-files: удаляет файл и каталог, в котором находился удаляемый файл (если он пуст).

В настоящий момент реализован простейший алгоритм, который перед сканированием каталога upload/iblock загружает все имена файлов из таблицы b_file в оперативную память, поэтому надо иметь в виду, что в случае нехватки памяти скрипт будет падать.

Примеры использования

Получить список всех неиспользуемых файлов из каталога upload/iblock:

php clear_upload.php /var/www/example.com

Переместить все неиспользуемые файлы из каталога upload/iblock в папку /backup:

php clear_upload.php --move-files=/backup /var/www/example.com

Удалить все неиспользуемые файлы из каталога upload/iblock:

php clear_upload.php --delete-files /var/www/example.com