
Переделка классической команды "tree" на Python3 с дополнительной возможностью поиска по предоставленным пользователем ключевым словам/regex в файлах и выделения тех, которые содержат совпадения.
Автономная переработка классической команды «tree» на Python3 с дополнительной возможностью поиска по ключевым словам/регулярным выражениям в файлах и подсветкой совпадений. Создана по двум основным причинам:
Пример #1: Запуск регулярного выражения, которое находит строки, подобные password = something, в каталоге /var/www

Пример #2: Использование ключевых слов через запятую вместо регулярного выражения:

Отказ от ответственности: Протестировано только на Windows 10 Pro.
python3 eviltree.py -r C:\xampp -k password,passwd,admin -i -v -q
python3 eviltree.py -r /var/www -x ".{0,3}passw.{0,3}[=]{1}.{0,18}" -i -v -q -L 3
python3 eviltree.py -r / -x ".{0,3}passw.{0,3}[=]{1}.{0,18}" -i -v -q -A -f -L 3
Примечательные возможности:
-x на самом деле возвращает уникальный список всех совпадений в файле. Будьте осторожны при совместном использовании с -v (--verbose), старайтесь указывать конкретный шаблон и ограничивать длину совпадающих символов.-b.-k (ключевые слова) и -x (регулярные выражения). Это полезно, если вы получили ограниченную оболочку на машине и хотите иметь «tree» с цветным выводом для осмотра.eviltree.py есть переменная-список filetype_blacklist, которую можно использовать для исключения определённых расширений из поиска по содержимому. По умолчанию исключены: gz, zip, tar, rar, 7z, bz2, xz, deb, img, iso, vmdk, dll, ovf, ova.-i (--interesting-only). Она заставляет eviltree выводить только файлы с совпадающими ключевыми словами/регулярными выражениями, значительно сокращая объём вывода:
-x ".{0,3}passw.{0,3}[=]{1}.{0,18}"-k passw,db_,admin,account,user,token