====== General Bash-ery ====== * ''Ctrl + a'', move to the beginning of the line * ''Ctrl + e'', move to the end of the line * ''Ctrl + k'', Cut the Line after the cursor to the clipboard. * ''Ctrl + u'', Cut the Line before the cursor to the clipboard. * ''Ctrl + y'', paste last value in clipboard * ''Meta + y'', cycle through previous values in clipboard === Command Line History Search === Use ''Ctrl + r'' to reverse search command history and ''Ctrl + s'' to forward search. ''Esc'' selects the current line and restores it to the active command line. ''Ctrl + g'' cancels the history search without recalling a line to the active command line. Add the following to the ''bashrc'' to disable the flow control function of ''Ctrl + s'' stty -ixon # enabled forward search with Ctrl+s by disabling XON/XOFF flow control ===== Command Line Editing ===== * ''export EDITOR=/bin/vi'' to make //vi// the default editor * ''Ctrl+x+e'' to edit current command in default text editor. * Opens the current command line in the default editor. For ''vi'' you can exit with '':cq'' to cancel the command. * ''fc'', fixed command opens the last command in the editor ====== History ====== * ''history -a'', append the current session history to the history file * ''history -s '', save the specified command line to history without executing it. Alternatively, prefix a line with the comment character (#) and it will be saved to history as a comment. ====== Command Delimiter ====== Automatically run a command after every command ran in the shell that prints a line that includes the current time. It makes it easier to spot commands being ran when scrolling back in the terminal. PROMPT_COMMAND='printf "\e[32m---------------------------$(date +%Y-%m-%dT%H:%M:%S%z)---------------------------\n\e[0m"' Example output ---------------------------2023-04-07T21:12:28+0000---------------------------