$ EDITORでコマンドを開くために必要なbash機能はどこに文書化されていますか?

$ EDITORでコマンドを開くために必要なbash機能はどこに文書化されていますか?

Ctrl私は最近++X Ctrlを押すと、Ebashがエディタで現在のコマンドを開き($VISUALまたはに設定$EDITOR)、エディタが閉じたときに実行することがわかりました。

ところで、ページに記録がないようですman。記録はありますか?それではどこで?

答え1

今発見しました。この質問をする前にもう少し注意深く読んでください。

ページmanの内容は次のとおりです。

edit-and-execute-command (C-xC-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.

答え2

許可された回答以下のコメントで説明したように、エディタ機能を持つことは非常に便利で安全です。すぐに実行されない

.bashrc実行を無効にするバインディングを有効にするには、それを追加します。Ctrl xe

_edit_wo_executing() {
    local editor="${EDITOR:-nano}"
    tmpf="$(mktemp).sh"
    printf '%s\n' "$READLINE_LINE" > "$tmpf"
    $editor "$tmpf"
    READLINE_LINE="$(<"$tmpf")"
    READLINE_POINT="${#READLINE_LINE}"
    rm "$tmpf"
}

bind -x '"\C-x\C-e":_edit_wo_executing'

クレジット取引:https://superuser.com/a/1601690/266871

関連情報