A lightweight directory tree viewer that intelligently groups numbered files for cleaner output.
Dmitree is a fast C program that displays directory structures in a tree format while automatically grouping numbered files (like file_1.txt, file_2.txt) into a single entry (file_#.txt (2 files)). Perfect for exploring datasets, image collections, or any directory with many sequentially numbered files.
- 🗂️ Smart File Grouping: Automatically groups numbered files by pattern
- 🌲 Clean Tree Display: Easy-to-read hierarchical structure
- ⚡ Fast Performance: Written in C for speed
- 🎯 Directory-Only Mode: Use
-dflag to show just folder structure - 📁 Flexible Paths: Specify any starting directory
git clone https://github.com/iameijaz/dmitree.git
cd dmitree
gcc -o dmitree dmitree.c
sudo cp dmitree /usr/local/bin/Download the latest .deb file from Releases and install:
sudo dpkg -i dmitree_1.0.0_amd64.debdmitree [options] [directory]-d: Show directories only (no files)-h, --help: Show help message
# Show current directory with grouped files
dmitree
# Show only directory structure
dmitree -d
# Analyze specific directory
dmitree /path/to/directory
# Show directory structure of a dataset
dmitree -d ./my-datasetBefore (standard ls -R):
./images/cats:
cat_001.jpg cat_002.jpg cat_003.jpg cat_004.jpg
cat_005.jpg cat_006.jpg cat_007.jpg cat_008.jpg
After (Dmitree):
└── images/
└── cats/
├── cat_#.jpg (8 files)
- 📊 Dataset Exploration: Quickly understand structure of ML datasets
- 🖼️ Image Collections: Clean view of photo directories
- 📂 Log File Analysis: Group numbered log files
- 🔍 Project Navigation: Get familiar with new codebases
- GCC compiler
- Standard C library
gcc -o dmitree dmitree.csudo cp dmitree /usr/local/bin/See PACKAGING.md for detailed instructions on building DEB packages.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Ijaz Ahmed [Verbit] — github.com/iameijaz
- Initial release
- Basic tree display with file grouping
- Directory-only mode
- Command-line argument parsing
⭐ If you find Dmitree useful, please give it a star on GitHub!