# Miscellaneous Commands (Bash Reference Manual)

`re-read-init-file (C-x C-r)`

Read in the contents of the inputrc file, and incorporate any bindings or variable assignments found there.`abort (C-g)`

Abort the current editing command and ring the terminal’s bell (subject to the setting of `bell-style`).`do-lowercase-version (M-A, M-B, M-x, …)`

If the metafied character x is upper case, run the command that is bound to the corresponding metafied lower case character. The behavior is undefined if x is already lower case.`prefix-meta (ESC)`

Metafy the next character typed. This is for keyboards without a meta key. Typing ‘ESC f’ is equivalent to typing M-f.`undo (C-_ or C-x C-u)`

Incremental undo, separately remembered for each line.`revert-line (M-r)`

Undo all changes made to this line. This is like executing the `undo` command enough times to get back to the beginning.`tilde-expand (M-&)`

Perform tilde expansion on the current word.`set-mark (C-@)`

Set the mark to the point. If a numeric argument is supplied, the mark is set to that position.`exchange-point-and-mark (C-x C-x)`

Swap the point with the mark. The current cursor position is set to the saved position, and the old cursor position is saved as the mark.`character-search (C-])`

A character is read and point is moved to the next occurrence of that character. A negative count searches for previous occurrences.`character-search-backward (M-C-])`

A character is read and point is moved to the previous occurrence of that character. A negative count searches for subsequent occurrences.`skip-csi-sequence ()`

Read enough characters to consume a multi-key sequence such as those defined for keys like Home and End. Such sequences begin with a Control Sequence Indicator (CSI), usually ESC-\[. If this sequence is bound to "\e\[", keys producing such sequences will have no effect unless explicitly bound to a readline command, instead of inserting stray characters into the editing buffer. This is unbound by default, but usually bound to ESC-\[.`insert-comment (M-#)`

Without a numeric argument, the value of the `comment-begin` variable is inserted at the beginning of the current line. If a numeric argument is supplied, this command acts as a toggle: if the characters at the beginning of the line do not match the value of `comment-begin`, the value is inserted, otherwise the characters in `comment-begin` are deleted from the beginning of the line. In either case, the line is accepted as if a newline had been typed. The default value of `comment-begin` causes this command to make the current line a shell comment. If a numeric argument causes the comment character to be removed, the line will be executed by the shell.`dump-functions ()`

Print all of the functions and their key bindings to the Readline output stream. If a numeric argument is supplied, the output is formatted in such a way that it can be made part of an inputrc file. This command is unbound by default.`dump-variables ()`

Print all of the settable variables and their values to the Readline output stream. If a numeric argument is supplied, the output is formatted in such a way that it can be made part of an inputrc file. This command is unbound by default.`dump-macros ()`

Print all of the Readline key sequences bound to macros and the strings they output. If a numeric argument is supplied, the output is formatted in such a way that it can be made part of an inputrc file. This command is unbound by default.`glob-complete-word (M-g)`

The word before point is treated as a pattern for pathname expansion, with an asterisk implicitly appended. This pattern is used to generate a list of matching file names for possible completions.`glob-expand-word (C-x *)`

The word before point is treated as a pattern for pathname expansion, and the list of matching file names is inserted, replacing the word. If a numeric argument is supplied, a ‘\*’ is appended before pathname expansion.`glob-list-expansions (C-x g)`

The list of expansions that would have been generated by `glob-expand-word` is displayed, and the line is redrawn. If a numeric argument is supplied, a ‘\*’ is appended before pathname expansion.`display-shell-version (C-x C-v)`

Display version information about the current instance of Bash.`shell-expand-line (M-C-e)`

Expand the line as the shell does. This performs alias and history expansion as well as all of the shell word expansions (see [Shell Expansions](https://woodrowpearson.gitbook.io/code-gists/shell-expansions-bash-reference-manual#Shell-Expansions)).`history-expand-line (M-^)`

Perform history expansion on the current line.`magic-space ()`

Perform history expansion on the current line and insert a space (see [History Interaction](https://woodrowpearson.gitbook.io/code-gists/history-interaction-bash-reference-manual#History-Interaction)).`alias-expand-line ()`

Perform alias expansion on the current line (see [Aliases](https://woodrowpearson.gitbook.io/code-gists/aliases-bash-reference-manual#Aliases)).`history-and-alias-expand-line ()`

Perform history and alias expansion on the current line.`insert-last-argument (M-. or M-_)`

A synonym for `yank-last-arg`.`operate-and-get-next (C-o)`

Accept the current line for execution and fetch the next line relative to the current line from the history for editing. A numeric argument, if supplied, specifies the history entry to use instead of the current line.`edit-and-execute-command (C-x C-e)`

Invoke an editor on the current command line, and execute the result as shell commands. Bash attempts to invoke `$VISUAL`, `$EDITOR`, and `emacs` as the editor, in that order.
