linux:general_bash-ery

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

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
  • 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 <cmd line>, 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---------------------------
  • linux/general_bash-ery.txt
  • Last modified: 2023/04/10 11:35
  • by mgupton