Complete fzf keyboard shortcuts reference — 16 shortcuts across 2 categories. Quick reference cheat sheet for Windows & Mac.
fzf is a fuzzy finder that takes any list on standard input and lets you filter it by typing, and its shell integration puts three of those lists on keys everyone already presses: history, file paths and directories. The table has the shell bindings and the keys inside the finder. The notes explain what each binding replaces and how the finder's keys combine.
| Shortcut | Action |
|---|---|
| Ctrl + R | Fuzzy history search |
| Ctrl + T | Insert file path |
| Alt + C | cd into directory |
| Tab | Fuzzy completion |
| Shortcut | Action |
|---|---|
| Ctrl + J | Move down |
| Ctrl + K | Move up |
| Enter | Accept selection |
| Tab | Toggle + down |
| Shift + Tab | Toggle + up |
| PageUp | Page up |
| PageDown | Page down |
| Ctrl + U | Clear query |
| Ctrl + W | Delete word |
| Ctrl + A | Start of query |
| Ctrl + E | End of query |
| Esc | Abort |
The most essential fzf shortcuts are: Ctrl + R (Fuzzy history search), Ctrl + T (Insert file path), Alt + C (cd into directory).
The fzf shortcut for fuzzy history search is Ctrl + R.
Print the fzf cheat sheet and keep it next to your keyboard for the first week, then switch to active recall: open Shortcut Speedrun and practice fzf shortcuts against the clock until they're automatic.
Yes — use My Stack to combine fzf shortcuts with any other platform on this site into one printable reference, which is useful if your daily workflow spans several tools.
Most do not — the underlying key is the same, but fzf (like most software) maps Ctrl on Windows/Linux to Cmd on Mac for standard operations. Where a shortcut is platform-specific, this page notes the Mac variant next to the Windows one.
With the key bindings sourced in .bashrc or .zshrc, Ctrl + R replaces the shell's history search with a fuzzy one — type fragments in any order and the matching commands appear, most recent first. Ctrl + T opens a finder over files under the current directory and pastes the selected path into the command line, which is how vim or cat reach a deeply nested file without typing the path. Alt + C does the same for directories and changes into the one you pick. Tab after a trigger sequence (** by default) fuzzy-completes paths, process IDs for kill, and hostnames for ssh.
Down is Ctrl + J and up is Ctrl + K (arrow keys work too), Enter accepts the highlighted line and Esc aborts, leaving the command line untouched. Multi-select is on Tab and Shift + Tab, which toggle the current line and move — so several files can be picked for one command. PageUp and PageDown jump through long lists. The query line uses readline keys: Ctrl + U clears it, Ctrl + W deletes a word, while the query's beginning and end are one keypress away on Ctrl + A and Ctrl + E.
Typing matches fuzzily, but prefixes change that: a leading ' makes a term exact, ^ anchors to the start, $ to the end and ! negates, and terms separated by spaces are ANDed. --preview in FZF_DEFAULT_OPTS shows file contents beside the list, which turns Ctrl + T into a file browser.
Open your assistant with this page preloaded as the source — great for follow-up questions like "which of these work in other apps?"