terminal:shell:fish
Table of Contents
fish
The Friendly Interactive Shell: a user-friendly alternative to bash with useful defaults and no configuration needed.
What It Is
A command line shell that provides out of the box:
- Syntax highlighting as you type: valid commands are colored, errors show before you run them
- Auto-suggestions from history (accept with right arrow or
Ctrl+F) - Smart tab completion that reads man pages for options
- Web-based configuration:
fish_configopens a browser UI
Good for beginners and for machines where the terminal is the whole interface, like a WriterDeck.
Differences From Bash
- Set variables with
set name value, notname=value $PATHis a list:set -Ua fish_user_paths ~/bin- No
export, no~/.bashrc. Config is stored in~/.config/fish/config.fish - Scripts are not bash-compatible: fish has its own syntax (
endinstead offi/done) abbr -areplaces aliases for interactive use
Quick Config
# ~/.config/fish/config.fish set -U EDITOR micro set -Ua fish_user_paths ~/bin ~/.local/bin abbr -a gs 'git status' abbr -a up 'sudo apt update && sudo apt upgrade'
See Also
terminal/shell/fish.txt · Last modified: by 127.0.0.1
