Fish (shell)
Finally, a command line shell for the 90s - Home
bind - key binding
Doc
- Startup (Where’s .bashrc?)
- fish starts by executing commands in ~/.config/fish/config.fish
alias --save df="df -h"
- define and save alias in one command
- fisher - A package manager for the fish shell
- fish-prompt-metro - Fast, git-aware, space-conscious, powerline prompt
- powerline/fonts - done - receive notifications when long processes finish.
- fzf.fish - Augment your Fish command line with mnemonic key bindings to efficiently find what you need using fzf & fd (make sure to have the proper version).
- fish-prompt-metro - Fast, git-aware, space-conscious, powerline prompt
- awesome-fish - A curation of plugins, prompts, and resources for fish.
The Fish Cookbook
Set as default shell
Tips: Rather set fish as your terminal’s shell instead of changing your login shell. see
- Kitty conf (ctrl+shift+f2) -
shell fish
- VSCode - F1 + terminal default provile
Check that fish is allowed in /etc/shells
CDPATH
Easily Navigate Directories in the Terminal the cd command to search for the directory you specify in locations other than your current directory.
For example, let’s say you have a $HOME/software/blog directory and you’ve configured the CDPATH to include the $HOME/software directory.
Now, if you type cd blog from anywhere in the filesystem, the cd command will take you to the $HOME/software/blog directory, unless it finds another blog directory in another pre-configured path.
PATH
PATH can be a pain, but there are some basics: Where is PATH set
- All apps+shells /etc/environment
- All shells ~/.profile or /etc/profile for all users (or a separate file under /etc/profile.d/ if using pacman)
- Bash shell ~/.bashrc (or ~/.bash_profile or ~/.bash_login)
- Fish shell ~/.config/fish/config.fish
- fish_add_path - add to the path
Alternative
Written on August 11, 2018, Last update on December 7, 2023
fish
shell
cli