fasd
Navigate to recent and frequent files/directories
SYNOPSIS
fasd [-V] | [-h] | [--init shell] | [-s|-l|-L|-R|-i|-a|-f|-d|-F|-S|-D] [query]
Shims: z, j, a, v, f [options] [query]
PARAMETERS
-V
Print version information and exit
-h
Display help and exit
--init shell
Print shell init code (auto, bash, zsh, fish, tcsh)
-s
Shell-escape paths (default for shims)
-l
List matching entries (no action)
-L
List full paths (no action)
-R
Use recency from cache in scoring
-i
Interactive multi-select with $PAGER
-a
Match files and directories
-f
Match files only
-d
Match directories only
-F
Match full paths (slower)
-S
Case-sensitive matching
-D
Interpret query as regex delimiter
DESCRIPTION
Fasd is a command-line tool designed to boost shell productivity by providing quick, intelligent access to frequently used files and directories. It tracks your command history (cd, vim, open, etc.) and builds a database scoring items by frequency and recency. Access them via fuzzy matching queries, where partial names suffice.
Unlike basic tab completion, fasd ranks results contextually, favoring recent or often-used paths. It offers shims like z (cd to directories), j (open files), a (any), v ($EDITOR), and f (print). For example, typing z doc cds to your most relevant ~/Documents folder.
Fasd is lightweight, with a simple cache (~/.fasd) updated on-the-fly. It's customizable via hooks and supports interactive selection. Ideal for developers and power users navigating complex directory trees without full paths. Requires shell initialization for shims.
CAVEATS
Requires shell init (eval "$(fasd --init auto)" in .bashrc); cache (~/.fasd) grows with usage; no built-in pruning; shims override common commands if not careful; performance dips with millions of entries.
INSTALLATION
apt install fasd (Debian/Ubuntu), brew install fasd (macOS), or git clone https://github.com/clvv/fasd
SETUP
Add to ~/.bashrc: eval "$(fasd --init debian-auto)" or posh-auto. Hooks: fasd_cd() for custom cd tracking.
ALIASES
z=fasd_cd -d, j=$EDITOR -a, v=$VISUAL, f=fasd -a (customizable)
HISTORY
Developed by Changwoo Ryu (clvv) starting 2013; inspired by autojump and z.sh. Open-source on GitHub (MIT license). Actively maintained with ports to most shells; popular in dotfiles and minimal setups.


