Other Shells: fish, dash, ksh, tcsh
# discovering shells
cat /etc/shells list the valid login shells installed on the system echo $SHELL show your login shell echo $0 show the shell currently running chsh -s /usr/bin/fish change your login shell # fish — friendly interactive shell
fish ships with autosuggestions, syntax highlighting and completions out of the box — no configuration required.
set -Ux EDITOR vim universal variables persist across sessions automatically abbr -a gc "git commit" abbreviations expand as you type, keeping history readable funced greet edit a function interactively; funcsave persists it fish_config configure colors and prompt in a web browser # dash, ksh, tcsh
dash script.sh dash — minimal POSIX shell; /bin/sh on Debian/Ubuntu, much faster for scripts ksh KornShell — POSIX shell with associative arrays and floating-point arithmetic, common on AIX/Solaris tcsh enhanced C shell with C-like syntax; historically the BSD default Rule of thumb: script for POSIX sh so it runs everywhere; pick any shell you like for interactive use.