ds-findorphaned
Скрипт ищет в файлах, находящихся в указанных каталогах и с именами, соответствующими указанному регулярному выражению, упоминания файлов, находящихся в других указанных каталогах и с именами, соответствующими другому указанному регулярному выражению, и выводит список тех файлов, которые не упоминаются ни в одном из тех, по которым ведётся поиск. Опционально их также можно удалить.
Синтаксис
ds-findorphaned [-v] [-r] [-R] [-e кодировка] [-l лог-файл] [-d 'каталог[, каталог…]'] [-f 'маска'] [-D 'каталог[, каталог…]'] [-F 'маска']
Ключи
-v |
(от verbose) | Выводить суммирующую информацию и предлагать удаление осиротевших файлов (по умолчанию — нет, только построчное перечисление). |
-e |
(от encoding) | Кодировка читаемых файлов (по умолчанию — * — автоопределение с помощью enca). |
-d |
(от directories) | Каталоги, на упоминание файлов в которых идёт проверка (через запятую, по умолчанию — . ). |
-r |
(от recursive) | Анализировать рекурсивно каталоги, на упоминание файлов в которых идёт проверка (по умолчанию — нет). |
-f |
(от files) | Регулярное выражение имён файлов, на упоминание которых идёт проверка (по умолчанию — .* ). |
-D |
(от directories) | Каталоги, в которых идёт проверка (через запятую, по умолчанию — . ). |
-R |
(от recursive) | Анализировать рекурсивно каталоги, в которых идёт проверка (по умолчанию — нет). |
-F |
(от files) | Регулярное выражение имён файлов, в которых идёт проверка (по умолчанию — .* ). |
-l |
(от log) | Создаваемый лог-файл (по умолчанию не создаётся, а пишется на stdout). |
Пример
$ ds-findorphaned -v -r -R -e "CP1251" -l "~/log.txt" -d "~/maybe_orphaned_images" -f ".*\.jpg$" -D "~/search_here, ~/and_here" -F ".*\.php$"
Результатом примера будет поиск во всех .php-файлах, находящихся в ~/search_here
и ~/and_here
(рекурсивно) на упоминание .jpg-файлов, находящихся в ~/maybe_orphaned_images
(рекурсивно).