
Oakfs is a humane CLI-based filesystem exploration tool, for humans.
It provides a colourful, human-friendly way to explore your filesystem in the terminal using either a tree or table view.
-
🌳 Tree view: Visualise your filesystem hierarchy like
treebut prettier. -
📊 Table view: Display directories in a sortable table with file size, type, permissions, and modified time.
-
🎨 Rich styling: Icons and colours for file types (documents, images, audio, code, archives, etc.).
-
🔍 Filtering:
-a, --all: include hidden files-d, --directories: show only directories-f, --files: show only files-s, --symlinks: show only symlinks-j, --junctions: show only junctions (Windows)
-
👥 Ownership info: Show owner, group, and permissions with
--groups. -
🕒 Timestamps: Choose between
relativerelative times (3 minutes ago) orlocaleformatted dates. -
🔄 Sorting: Reverse order with
--reverse.
Note
To make your experience more pleasant, you'll need to have a Nerd Font installed, specifically JetBrains Mono Nerd Font.
You can get it here
Oakfs is available on PyPI, and can be installed with pip:
pip install oakfsThis will install oak as a CLI command.
Run oak from the command line:
oak [PATH]Example:
oak ~/projectsoak --tree [PATH]Example:
oak --tree ~/projectsNote
If no path is provided, it defaults to the current working directory.
Tip
If you decided not to install JetBrains Mono Nerd Font (because you've decided to become a caveperson for some
reason), you can
always run oak with the -N, --no-icons option.
This should help with embracing the unga bunga within you.
| Option | Description |
|---|---|
-t, --tree |
show filesystem hierarchy in a tree view structure |
-a, --all |
show hidden files and/or directories |
-f, --files |
show files only |
-d, --directories |
show directories only |
-s, --symlinks |
show symlinks only |
-j, --junctions |
show junctions only |
-r, --reverse |
reverse sort order |
-S, --stats |
show entry stats (mimetypes, groups, owners, permissions, e.t.c) |
-N, --no-icons |
disable showing icons in output |
-D, --dt-format [relative|locale] |
output datetime format (default: |
| relative) | |
-T, --table-style [ASCII|ROUNDED|SQUARE|HEAVY|DOUBLE|SIMPLE|MINIMAL] |
table border style (default: |
| ROUNDED) | |
-h, --help |
show help message and exit |
--version |
show version and exit |
Note
The following options are available only in the default (table) view: --dt-format, and obviously --table-style
ok. that's all (for now).
