# 目录结构读取器_WIN_MAC_LINUX **Repository Path**: hackingboos/directory-structure-reader ## Basic Information - **Project Name**: 目录结构读取器_WIN_MAC_LINUX - **Description**: 目录结构读取器是一款 Windows 平台下的目录结构浏览与管理工具,基于 Avalonia UI 框架构建,由 HackBoos开发。程序旨在帮助用户快速浏览、查看和管理本地文件系统中的目录与文件。 - **Primary Language**: C# - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-07-14 - **Last Updated**: 2026-08-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ![输入图片说明](%E6%88%AA%E5%9B%BE.jpg) # 目录结构读取器 DirectoryReader 一款轻量、高效的跨平台目录结构浏览与导出工具,基于Avalonia 11+.NET6构建,一套代码原生支持Windows/Linux/macOS三大桌面平台。 只需点击「打开目录」,即可自动递归扫描指定文件夹下的全部子目录和文件,按名称排序、文件夹优先,以清晰的树形文本呈现在界面中。生成的目录结构与 Linux `tree` 命令风格一致,直观易懂。 支持将目录结构一键导出为 UTF-8 文本文件,方便分享、存档或嵌入文档。软件还内置了项目 Gitee 仓库链接与「零日防线」公众号二维码入口,方便获取更新和技术支持。 界面简洁无冗余,去除了繁杂的编辑功能,专注做好「目录浏览 + 结构导出」这一核心任务。 --- ## 主要功能 ### 📂 目录浏览 - 选择任意文件夹,自动递归扫描所有子目录和文件 - 右侧实时显示目录树形结构(与导出格式一致) - 按名称字母排序,文件夹优先 ### 📤 导出目录结构 - 将当前目录的完整树形结构导出为文本文件(UTF-8) - 格式示例: ``` 文件夹名/ ├── 子文件夹/ │ ├── file1.txt │ └── file2.txt └── file3.txt ``` ### 🔗 快速链接 - **Gitee仓库** — 点击直接跳转到项目主页 - **零日防线** — 点击弹出二维码窗口,微信扫码关注公众号 --- ## 各平台可执行文件 下载对应平台的压缩包,解压后运行即可。确保可执行文件与原生库文件在同一目录。 | 平台 | 运行文件 | 说明 | |---|---|---| | Windows x64 | `DirectoryReader.exe` | 双击运行 | | Linux x64 | `DirectoryReader` | 终端 `./DirectoryReader` | | macOS Intel | `DirectoryReader` | 终端 `./DirectoryReader` | | macOS Apple Silicon | `DirectoryReader` | 终端 `./DirectoryReader`,原生 ARM64 | --- ## 运行要求 ### Windows 1. 下载安装 [.NET 6 Desktop Runtime x64](https://dotnet.microsoft.com/en-us/download/dotnet/6.0) 2. 确保 `DirectoryReader.exe` 与同目录下的 `.dll` 文件完整 3. 双击运行 ### Linux / macOS 安装 .NET 6 Runtime 后,终端执行: ```bash chmod +x DirectoryReader ./DirectoryReader ``` --- ## Linux / macOS 常见问题 ### 1. 缺少 .NET 6 Runtime ``` You must install .NET to run this application. ``` **Linux (Ubuntu/Debian):** ```bash wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.sh chmod +x dotnet-install.sh ./dotnet-install.sh --channel 6.0 --runtime dotnet echo 'export PATH=$HOME/.dotnet:$PATH' >> ~/.bashrc && source ~/.bashrc ``` **Linux (Fedora/CentOS/RHEL):** ```bash sudo dnf install dotnet-runtime-6.0 ``` **macOS:** ```bash brew install dotnet-sdk@6 # 或访问 https://dotnet.microsoft.com/en-us/download/dotnet/6.0 下载 pkg 安装包 ``` --- ### 2. macOS 提示文件已损坏无法打开 ``` "DirectoryReader" 已损坏,无法打开。您应该将它移到废纸篓。 ``` 这是 macOS Gatekeeper 安全策略,程序本身没有问题: ```bash xattr -d com.apple.quarantine /path/to/DirectoryReader chmod +x /path/to/DirectoryReader ./DirectoryReader ``` 如果仍被阻止,前往 **系统设置 → 隐私与安全性** → 点击 **仍要打开**。 --- ### 3. macOS Apple Silicon 上 Rosetta 问题 M1/M2/M3 Mac 上首次运行可能触发 Rosetta 安装提示,这是因为部分依赖库为 x64 架构。选择 **安装** 即可,Rosetta 2 由 Apple 官方提供,安全可靠。 --- ### 4. Linux 上缺少原生库 ``` error while loading shared libraries: libSkiaSharp.so: cannot open shared object file ``` 确保发布包内所有文件在同一目录: ```bash ls -la # 应看到 DirectoryReader + libSkiaSharp.so + libHarfBuzzSharp.so ``` 如果库文件缺失,请重新下载完整发布包。 --- ### 5. Linux 上中文显示为方框或乱码 系统缺少中文字体: ```bash # Ubuntu/Debian sudo apt install fonts-noto-cjk # Fedora/CentOS/RHEL sudo dnf install google-noto-sans-cjk-sc-fonts # Arch Linux / Manjaro sudo pacman -S noto-fonts-cjk ``` 安装字体后重新启动程序即可正常显示中文。 --- ### 6. Linux 上 Wayland 兼容性问题 部分 Wayland 环境下窗口显示异常(如透明窗口、无法输入)。 解决: ```bash # 强制使用 X11 后端运行 ./DirectoryReader ``` 或在系统登录界面切换到 "Xorg" 会话。 --- ### 7. macOS 终端运行提示 "没有权限" ```bash chmod +x /path/to/DirectoryReader ./DirectoryReader ``` --- ### 发布策略 | 配置项 | 值 | 说明 | |---|---|---| | PublishSingleFile | true | 托管代码合并为单文件 | | SelfContained | false | 不集成 .NET Runtime(需系统安装) | | PublishTrimmed | false | framework-dependent 模式不支持裁剪 | 此策略每平台仅生成 4-5 个文件,体积可控,用户需自行安装 .NET 6 Runtime。 --- © 2026 HackBoos 保留所有权利。本软件仅供个人学习与使用,请勿用于商业用途。