一个独立的 python3 重制版,复刻了经典的 "tree" 命令,并新增了在文件中搜索用户提供的关键词/正则表达式的功能,高亮包含匹配项的文件。创建此工具主要有两个原因:
示例 #1:针对 /var/www 运行一个正则表达式,该正则主要匹配类似 password = something 的字符串

示例 #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(详细输出)结合使用时请小心,尽量限定匹配字符的长度。-b 选项来搜索二进制文件中的关键词/正则。-k 和正则 -x 值,可以将此工具用作经典的 "tree" 命令。这在你在某台机器上获得有限 shell 时很有用,可以使用带彩色输出的 "tree" 来浏览目录。eviltree.py 中有一个列表变量 filetype_blacklist,可用于排除某些文件扩展名不进行内容搜索。默认排除以下类型:gz, zip, tar, rar, 7z, bz2, xz, deb, img, iso, vmdk, dll, ovf, ova。-i(仅显示感兴趣的文件)选项。它指示 eviltree 仅列出包含匹配关键词/正则内容的文件,显著减少输出长度:
-x ".{0,3}passw.{0,3}[=]{1}.{0,18}"-k passw,db_,admin,account,user,token