====== bash / zsh ====== ===== untilfail script ===== Repeatedly run a command until failure ([[https://stackoverflow.com/questions/12967232/repeatedly-run-a-shell-command-until-it-fails|source]]) #!/bin/bash while "$@"; do :; done ===== Bash prompt ===== Esc . : Repeat last param Ctrl U : Cut backwards Ctrl K : Cut forwards Ctrl W : Cut previous word Ctrl Y : Paste Ctrl V : Verbatim / Insert literal control characters Ctrl D / Esc D : Cut current character Ctrl H : Cut prev character Ctrl I / Tab : Autocomplete Ctrl _ / Ctrl X, Ctrl U : Undo Ctrl T : Swap characters before cursor Esc T : Swap words before cursor Esc C : Capitalize current character and move to end of the word Esc F : Forward 1 word Esc B : Backward 1 word Ctrl A : Go to line start Ctrl E : Go to line end Ctrl F : Forward 1 character Ctrl B : Back 1 character Ctrl XX : Toggle between positions in a line Ctrl R : Search history Ctrl L : Clear screen Ctrl C : Kill running command !! : Run previous command ! : Run last command starting with !:p : Display last command starting with ! : Run nth command in history !^ : First arg of last command !$ : Last arg of last command ^find^replace^ : Substitute in last command and run ===== bash Other ===== bind -p # List keymap in bash ===== zsh Other ===== bindkey # List keymap in zsh for main (emacs/viins) zle -al # List of all commands to use in bindings bindkey -e # emacs mode bindkey -v # vi mode