https://github.com/gnualmalki/udu
extremely fast command-line disk usage analyzer
https://github.com/gnualmalki/udu
cli cross-platform disk-usage linux macos utility windows
Last synced: 3 days ago
JSON representation
extremely fast command-line disk usage analyzer
- Host: GitHub
- URL: https://github.com/gnualmalki/udu
- Owner: gnualmalki
- License: gpl-3.0
- Created: 2025-09-12T01:17:56.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-11-30T22:28:52.000Z (7 months ago)
- Last Synced: 2026-03-04T17:48:31.607Z (4 months ago)
- Topics: cli, cross-platform, disk-usage, linux, macos, utility, windows
- Language: C
- Homepage:
- Size: 244 KB
- Stars: 21
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
# UDU
UDU is an extremely fast POSIX-command-line-program for summarizing file and directory sizes by recursively scanning directories using a parallel traversal engine implemented with [OpenMP](https://www.openmp.org/) making it significantly faster than traditional tools on multi-core systems.
See [Benchmarks](./BENCHMARKS.md).
## Installation
### Pre-built Binaries
You can download pre-built binaries from the [GitHub Releases](https://github.com/gnualmalki/udu/releases) page.
### Build from Source
Building UDU requires a modern C compiler such as [GCC](https://gcc.gnu.org/) 9.5 or [Clang](https://clang.llvm.org/) 14.0.0 (or later), [GNU Make](https://www.gnu.org/software/make/), and [OpenMP](https://www.openmp.org/) 3.0 or later (optional: for parallel processing).
Clone the repository and build using these commands:
```bash
git clone --depth=1 https://github.com/gnualmalki/udu.git
cd udu
make -B
```
Install with:
```bash
make install # may require sudo
```
## Usage
```bash
Usage: udu [option(s)...] [path(s)...]
Extremely fast disk-usage analyzer with a parallel traversal engine.
OPTIONS:
-a, --apparent-size show file sizes instead of disk usage
(apparent = bytes reported by the filesystem,
disk usage = actual space allocated)
-h, --help display this help and exit
-q, --quiet display output only at program exit (default)
-v, --verbose display each processed file
-t, --tree mimic the output of 'tree' command
--version display version information and exit
-X, --exclude=PATTERN skip files or directories that match a glob pattern
* any characters
? a single character
[abc] any character in the set
Examples: '*.log', 'temp?', '[0-9]*'
EXAMPLE:
udu ~/ -avX epstein-files
Report bugs at
```
## License
THIS PROGRAM IS FREE SOFTWARE: YOU CAN REDISTRIBUTE IT AND/OR MODIFY IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY THE FREE SOFTWARE FOUNDATION, EITHER VERSION 3 OF THE LICENSE, OR ANY LATER VERSION.
THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU GENERAL PUBLIC LICENSE FOR MORE DETAILS.