求支持通配符的tree工具:需展示.h和.cpp文件树形结构
当然有啦!很多主流的tree工具都支持通配符过滤,完全能满足你想要树形结构展示.h和.cpp文件的需求,不用再依赖dir /s那种平铺的路径列表~
不同平台的具体实现方案
Windows系统
Windows自带的tree命令本身通配符支持有限,但可以结合findstr实现精准过滤:
tree /f | findstr /i "\.h$ \.cpp$"
如果想要更强大的原生支持,推荐安装Git for Windows附带的GNU版本tree——这个版本功能更完善,直接支持多模式通配符:
tree -P "*.h|*.cpp" -f
参数说明:
-P:指定要匹配的文件名模式,用管道|分隔多个后缀-f:显示每个文件的完整路径
Linux/macOS系统
Linux几乎所有发行版都预装了功能完整的GNU tree,macOS可以通过Homebrew安装(执行brew install tree即可)。它们对通配符的支持非常友好:
# 同时显示.h和.cpp文件,带完整路径 tree -P "*.cpp|*.h" -f # 只显示.h文件并保存到输出文件 tree -P "*.h" -o header_tree.txt
如果需要反向过滤(排除非目标文件),可以用-I参数:
tree -I "*.[!hc][!pp]*" # 排除既不是.h也不是.cpp的文件
实用小彩蛋
- Linux/macOS的GNU
tree可以加-C参数,给不同类型的文件加上颜色区分,树形结构看起来更清晰 - 所有平台都可以通过重定向符号
>把树形结果保存到本地文件,方便后续查看
内容的提问来源于stack exchange,提问作者SparkyNZ
相关产品推荐
相关产品推荐

