Bash
什麼是 bash 中的“<Esc>Kv”
當我在 bash 中並按
Esc
,Shift
+K
, 時V
,bash 會$EDITOR
以類似於/tmp/bash-fc-186566385
.為什麼會這樣,它的目的是什麼?
我可能需要提到我正在執行 bash
set -o vi
。
這允許您建構一個具有完整 Vi 編輯的命令。如果您鍵入一些命令並保存退出
:wq
,這些命令將被執行。澄清:它允許您在您設置的任何編輯器中建構命令,
$EDITOR
當您保存並退出時,內容將執行。(澄清不只是 Vi!)此外,正如RealSkeptic所指出的,
shift
+K
組合不需要調出編輯器。簡單esc
,V
會。
你不需要
Shift
+k
。使用Esc
+v
將起作用,因為您允許使用內置 vi 編輯器使用 shell 命令行編輯(使用+set -o vi
可以實現相同的效果 )。這相當於執行內置命令,該命令對操作歷史列表和歷史文件很有用。它將呼叫您(否則,您的 shell 的預設編輯器)中設置的任何編輯器來編寫一個長的、棘手的或複雜的命令,然後在保存並關閉編輯器後執行它們。有關命令的詳細資訊,請參見此處: Bash history builtins。Ctrl``x``e``fc``$EDITOR``fc